Test cuestionario sobre estructuras de datos - the question form
Preguntas: 16 · 10 minutos
1. ¿Qué es una colisión en una tabla hash?
Dos claves diferentes se asignan al mismo contenedor o índice
Una clave se inserta más de una vez con el mismo valor
Las claves de la tabla se almacenan en orden
Una búsqueda examina todos los contenedores antes de devolver un resultado
2. Una aplicación necesita comprobar rápidamente, en el caso promedio, la pertenencia de identificadores únicos de usuario y no necesita conservar su orden. ¿Qué estructura es la opción más directa?
Arreglo dinámico
Cola de identificadores de usuario
Conjunto basado en hash
Montículo mínimo binario
3. ¿Qué relación de orden define un montículo mínimo?
Cada hijo izquierdo es menor que su hermano derecho
Los nodos se ordenan según el momento en que fueron insertados
Todas las claves del subárbol izquierdo son menores que la clave de la raíz
Cada padre tiene una clave que no es mayor que las claves de sus hijos
4. Un sistema de autocompletado debe recuperar eficientemente palabras que comienzan con una secuencia de caracteres proporcionada. ¿Qué estructura de datos es especialmente adecuada para esta tarea?
Pila de caracteres
Estructura de conjuntos disjuntos de palabras
Trie de prefijos
Montículo mínimo de sugerencias
5. Un grafo tiene millones de vértices posibles, pero relativamente pocas aristas. ¿Por qué suele preferirse una lista de adyacencia en lugar de una matriz de adyacencia?
Mantiene automáticamente todos los vértices ordenados
Garantiza una consulta en tiempo constante para cada arista posible
Elimina la necesidad de almacenar identificadores de vértices
Su almacenamiento es proporcional a los vértices y las aristas existentes, en lugar de a cada par posible
6. ¿Qué operación de una pila elimina y devuelve el elemento agregado más recientemente?
Desapilar (pop)
Desencolar (dequeue)
Consultar el elemento superior (peek)
Encolar (enqueue)
7. Una impresora debe procesar los trabajos en el mismo orden en que llegan. ¿Qué estructura de datos admite este comportamiento de la manera más directa?
Pila
Conjunto
Cola
Árbol binario de búsqueda
8. Un planificador agrega con frecuencia tareas con prioridades numéricas y elimina repetidamente la tarea con el menor valor de prioridad. ¿Qué estructura suele ser apropiada?
Montículo mínimo
Cola FIFO
Conjunto hash
Lista simplemente enlazada
9. Un arreglo dinámico ocasionalmente asigna un bloque más grande y copia sus elementos, pero la mayoría de las operaciones de anexado colocan un elemento directamente al final. ¿Cuál es el tiempo amortizado habitual por cada operación de anexado?
Tiempo amortizado logarítmico: O(log n)
Tiempo amortizado constante: O(1)
Tiempo amortizado lineal: O(n)
Tiempo amortizado cuadrático: O(n al cuadrado)
10. Necesitas detectar si una lista simplemente enlazada contiene un ciclo usando O(1) de espacio adicional. ¿Qué técnica cumple este requisito?
Mover un puntero un paso y otro puntero dos pasos
Copiar cada nodo en una segunda lista enlazada
Ordenar los nodos según los valores que almacenan
Realizar una búsqueda binaria en las posiciones de los nodos
11. En un árbol binario de búsqueda válido que contiene claves distintas, ¿qué recorrido visita las claves en orden ascendente?
Recorrido en preorden
Recorrido en orden
Recorrido en postorden
Recorrido por niveles
12. Quieres encontrar, desde un vértice inicial, una ruta con la menor cantidad de aristas en un grafo no ponderado. ¿Qué recorrido y estructura auxiliar debes usar?
Búsqueda en profundidad con una pila
Búsqueda en profundidad con un montículo mínimo
Recorrido en orden con una pila
Búsqueda en amplitud con una cola
13. Una aplicación de red combina repetidamente grupos de dispositivos conectados y consulta si dos dispositivos pertenecen actualmente al mismo grupo. ¿Qué estructura está diseñada para estas operaciones?
Trie de prefijos
Cola circular de tareas
Unión de conjuntos disjuntos
Árbol binario de búsqueda ordenado
14. Ya tienes una referencia a un nodo de una lista simplemente enlazada y quieres insertar un nodo nuevo inmediatamente después. ¿Cuál es la complejidad temporal habitual de actualizar los enlaces?
Tiempo lineal-logarítmico, O(n log n)
Tiempo constante, O(1)
Tiempo logarítmico, O(log n)
Tiempo lineal, O(n)
15. Necesitas buscar repetidamente en un arreglo grande descartando la mitad de los elementos restantes en cada paso. ¿Qué condición debe cumplir el arreglo?
No debe contener valores duplicados
Debe tener una capacidad fija
Debe almacenar los elementos en orden de inserción
Debe estar ordenado de acuerdo con el criterio de búsqueda
16. ¿Qué estructura de datos utiliza normalmente un programa para llevar el control de las llamadas a funciones activas durante la recursión?
Cola de llamadas
Pila de llamadas
Tabla hash de funciones
Grafo de llamadas