Estructuras de datos

1). Escriba una función para realizar la sustracción de dos cadenas (uso Dont construido en funcions)
Por ejemplo:. Charla N1 = «123», N2 = «478», N3 = -355 (N1-N2).

2). Escriba un programa dinámicamente inicializar un array 2 dimentional Ejemplo: 5×20, aceptar cadenas y compruebe si hay vocales y mostrar el no.finally libre el espacio asignado.

3). Escriba un programa para leer una línea de un archivo desde la ubicación N1 a N2 mediante agruments línea de comandos
Por ejemplo: /> exe 10 20 ac
4). Escriba un programa para encontrar el más grande de 4 sin el uso de macros. />
5). Teniendo en cuenta los tres puntos (x1, y1), (x2, y2), (x3, y3). Escribir un prog para chk si todos los 3 puntos caen en 1 línea recta.
O dadas las coordenadas (x, y) como ofa centro circle.write un prog que determinará si un punto está dentro de un círculo o fuera el círculo ..

6). ¿Cómo podemos hacer que una imagen reflejada en un entero de 32 bits (16 -16 bits)
intercambios primera bits con bits 32a
segundo bit <-> 31 bits
tercera bits <-> .. 30a poco

15a poco <-> 18a poco

7). Cómo expresar expresión algebaric al árbol binario
convertir la expresión: a + (b * c) + d + g />
8). Un elemento de la mayoría en una matriz A, de tamaño N es un elemento que aparece más de N / 2 veces (y por lo tanto no hay atmost
uno de esos elementos) Escriba una función que toma una matriz y emite el elemento mayoría (si existe), de lo contrario imprime NINGUNO de la siguiente manera:

I / P: 3 3 4 2 4 4 2 4 4
O / P: 4 />
I / P: 3 3 4 2 4 4 2 4
O / P: NONE

9). U ¿Cómo encontrar la cadena de repetir más grande y el número de veces que se repite en una cadena dada eficiente offcourse
ex:? Encordado: «abc bc fghi kl abcd lkm abcdefg»
Respuesta: «abcd» count = 2

10). Se le da una alfombra cada uno de los 8 * 8 tamaño y 6 * 1 tamaño. Es necesario hacer una alfombra 7 * 10 a partir de estos dos alfombras. Usted puede hacer 8 * 8 alfombra en dos piezas (cualquier forma) solamente. ¿Cómo se divide la alfombra 8 * 8 y utilizar las 3 piezas para hacer 7 * 10 alfombra.

11). Una matriz que contiene los números enteros positivos y negativos. Encuentre la sub-matriz con la suma más grande de O (N).

12). ¿Cómo detectar un bucle en una lista enlazada?

13). ¿Cómo saber si uno de los punteros en una lista enlazada está corrupto o no?

14). Escriba un programa C para volver al nodo enésima desde el final de una lista enlazada.

15). ¿Cómo se encuentra el medio de una lista enlazada?

16). ¿Cómo revertir una lista vinculada individualmente? ¿Cómo revertir una lista doblemente enlazada?

17). Cómo leer una lista ligada al revés?

18). Escriba un programa para crear una copia espejo de un árbol binario (nodos izquierda a la derecha y se convierten en nodos adecuados convierten izquierda)

19). Encontrar el ancestro más cercano de dos nodos en un árbol binario.

20). ¿Qué es un árbol binario de rosca?

21). ¿Cuántos diferentes árboles binarios puede ser construido usando n nodos?

22). Escribe una fn que comprueba si el árbol está equilibrado o restricción árbol not.The equilibrada se cambia como siempre emparejar nodos hoja od no deben diferencia tiene más de 1

23). 1. Escriba el código para insertar una cadena en una matriz de relleno. Un conjunto empaquetado es la que contiene la longitud de la cadena y luego la propia cadena
por ejemplo: -. 4hill5hello3and2as6ashwin etc es un conjunto empaquetado

24).. Hay un número de 1 a N en una matriz. De ellos, uno de los números consigue duplicar y falta uno. La tarea consiste en averiguar el número duplicado. Condiciones: Tienes que hacerlo en O (n) tiempo sin usar ningún espacio auxiliar (array, bitsets, mapas, etc.) Se le permite utilizar variables adicionales.

25) Dada una cadena de entrada S escribir una función que devuelve true si satisface S = nT. Básicamente, usted tiene que encontrar si una cadena dada puede representarse de una subcadena por iternating se agota el tiempo «n». n> = 2

Un ejemplo sería suficiente –
Función debería devolver true si
1) S = «abab»
2) S = «ABCDABCD»
3) S = «abcabcabc»
4) S = «zzxzzxzzx» />

2) S = «abcdabbd»
3) S = «abcabcefg»
4) S = «zzxzzyzzx»

26) Habida cuenta de dos matrices de enteros ordenados postive A ( n) y B (n) (WLOG, vamos
dicen que son cada vez menos ordenada), definimos un conjunto S = {(a, b) | a in A />
un par se define como Val (a, b) = a + b. Ahora queremos obtener los n pares
de S con los valores más grandes. La parte difícil es que necesitamos una operación O (n) algoritmo /> para ex si n = 3
imprima

((() ))
(()) ()
() () ()
(() ())
() (())

29) Tiene un archivo con millones de líneas de datos. Sólo dos líneas son idénticos, el resto son todos únicos. Cada línea es tan largo que puede que ni siquiera caben en la memoria. ¿Cuál es la solución más eficiente para la búsqueda de las líneas idénticas?

30) Describir las estructuras de datos que va a utilizar para la aplicación de la serpiente y juego de escalera … detalles de la implementación?

31) Diseñar una estructura de datos para buscar el siguiente elemento más alto para cada elemento de una matriz. Por ejemplo, si la matriz es 1 2 3 4 5 8 6
O / P debe ser
Elemento) (elemento inmediatamente superior)

1 2 2 3 3 4

4 5

5 8 8 nada
6 nada

La matriz no es necesario ordenar.
restricciones-O (n) tiempo de complejidad

32) Escriba un pequeño programa en C, que durante la compilación se lleva otro programa de terminal de entrada, y en el funcionamiento da el resultado para el segundo programa. (NOTA: La clave está, creo UNIX).
Supongamos, el programa se
raju.c Luego, durante la compilación />
int main ( )
. {printf />
D ^ $ / raju

Hola mundo $

33) Dada una cadena s1 y una cadena s2, escribir un fragmento de código para decir si s2 es una rotación de s1 usando sólo una llamada a la rutina strstr
Ejemplo: dado s1 = ABCD y s2 = CDAB, devolver true,
dado s1 = ABCD, y s2 = ACBD, return false)

34) ¿Cuál es la «condición» para que las siguientes impresiones fragmento de código tanto HelloWorld!

si «condición» printf />
(Hay al menos 3 soluciones a este problema 🙂
int main () {/>

for (i = 0; i
return 0;}

38) Se le da tener un tipo de datos, por ejemplo X en C. El requisito es conseguir que el tamaño del tipo de datos, sin declarar una variable o una variable de puntero de ese tipo, y, por supuesto, sin utilizar el operador sizeof!

39) Escribir una función recursiva que genera la Powerset de un conjunto dado. El conjunto se pasa a la función como una cadena. Y la función debe imprimir los subconjuntos como Strings
[Nota:].
Powerset ({1,2,3}) = 0, 1, 2, 3, 12, 13, 23, 123 / / 0 es Set Null.

40) En un año calendario (se supone no bisiesto), determinar el número de los thirteenths Viernes no puede haber. ¿Cuál es el menor número posible />
41) ¿Cómo podría evitar que una clase sea utilizada como una clase base en C + +
Por ejemplo:. Considere algunas ABC clase. Me gustaría que el usuario para crear objetos de la clase ABC, pero le impide derivar clases de ABC y la creación de objetos de la clase derivada.

42) ¡Tienes que escribir una macro sencilla CHAR (x) que toma un personaje x y la convierte en el valor ASCII de x.
printf («% c», CHAR (a)) ==>

43) Escribir una función C que gira a la justo al lado de «n» posiciones de bit de los bits de un entero sin signo de x. No hay supuestos que se hagan sobre la los valores de «n» puede tomar y el tamaño de la ‘x’

44) Proponer una estructura de datos para lo siguiente:.
– La estructura de datos celebraría elementos de 0 a N-1. No hay un orden en los elementos (no ascendente / descendente requisito de la orden)
La complejidad de las operaciones debe ser el siguiente:.
* Inicialización – O (1)
* La inserción de un elemento – O (1)
* Supresión de un elemento – O (1)
* Búsqueda de un elemento – O (1)
* La eliminación de todos los elementos – O (1)

45) Habida cuenta de 6 palos partido de igual longitud. Se le pide para formar 4 triángulos equiláteros con estos palos. Obviamente, no se te permite romper, dividir o doblar los palos.

46) Proponer una estructura de datos que soporta el empuje de pila y las operaciones del pop y una tercera find_min operación, que devuelve el elemento más pequeño de la estructura de datos, todo en O (1) vez peor de los casos.

47) Escribir un algoritmo para comprobar si un número sin signo dado es un múltiplo de 3, sin necesidad de utilizar los operadores de división y de módulo.

48) Hay 2 ciudades A y B , dist. entre ellos es de 1000 km. Tenemos 3.000 plátanos en la ciudad de A y un elefante puede llevar máximo 1000 plátanos en un momento dado y que necesita para comer un plátano cada 1 km. ¿Cuántas Max. N º de plátanos puede transferir a la ciudad B
Nota:. El elefante no puede ir sin bananas para comer

49) Dadas dos matrices A y B. Matriz ‘A’ contiene toda la elementos de la ‘B’, pero uno de los elementos más extra.Find el elemento extra. Restricciones:. Dont utiliza ningún ops relacionales (> o> o == etc …), los elementos de matriz no están en orden />
50) Teniendo en cuenta una serie de elementos que 2n de n elementos son los mismos y los n elementos restantes son todas diferentes. Escriba un programa C para averiguar el valor que está presente n veces en la matriz. No hay ninguna restricción en los elementos de la matriz. Ellos son aleatorios (En particular, no secuencial).

51) Teniendo en cuenta los valores de dos nodos en un árbol binario de búsqueda * *, escribir el programa ac para encontrar el ancestro común más bajo. Usted puede asumir que ya existen dos valores en el prototipo de la función árbol.Las es el siguiente:
int FindLowestCommonAncestor (nodo raíz *, int valor1, int value)

20 /

22 8 /

12 4 /
10 14 />
I / P: 4 y 14 de
O / P: 8
Aquí los antepasados ​​comunes de 4 y 14 años, son {8,20}. De {8,20}, la más baja es 8).

52) En C, la copia de la matriz de la siguiente no es posible:
int a [10], b [10];
a = b;
un = GetAnArrayOfTenElements ();
¿Puedes pensar en un simple hack, lo que nos permitiría conseguir este efecto

53) Hay un edificio de 100 pisos y se le da dos huevos?. Los huevos (y la construcción) tienen una propiedad interesante que si usted lanza el huevo de un número de piso menos de X, que no se rompa. Y será siempre el freno si el número del piso es igual o mayor que X. Asumiendo que usted puede volver a utilizar los huevos que no se rompieron, usted tiene que encontrar X en un número mínimo de lanzamientos. Dé un algoritmo para encontrar X en número mínimo de lanzamientos.

54) Escribir 2 programas que comunicarán ambos sentidos (es decir, cada proceso puede leer y escribir) cuando se ejecutan simultáneamente a través de los semáforos.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *