Arreglos y listas en programación
Nombre: ___________________________
Fecha: ____________________________
Puntaje: __________________________
1.
¿Cuál es la característica principal de un arreglo (array) en programación?
Almacena elementos del mismo tipo en memoria contigua
Almacena elementos de diferentes tipos
Los elementos se almacenan en nodos dispersos
Almacena elementos del mismo tipo en memoria contigua
2.
En la mayoría de los lenguajes de programación, ¿cuál es el índice del primer elemento de un arreglo?
1
0
-1
Depende del lenguaje
0
3.
¿Cuál es la complejidad temporal para acceder a un elemento por su índice en un arreglo?
O(n)
O(1)
O(log n)
O(n²)
O(1)
4.
En un arreglo dinámico, la inserción de un elemento al final se realiza en tiempo amortizado ____.
Respuesta: ____________________________________________
O(1)
5.
¿Cuál de las siguientes afirmaciones sobre un arreglo estático es verdadera?
Su tamaño puede cambiar en tiempo de ejecución
Su tamaño es fijo una vez definido
Almacena elementos de diferentes tipos
No permite acceso por índice
Su tamaño es fijo una vez definido
6.
En una lista enlazada simple, ¿qué contiene cada nodo?
Datos y un puntero al siguiente nodo
Solo datos
Datos y un puntero al nodo anterior
Datos y un puntero al siguiente nodo
7.
¿Cuál es la complejidad temporal de buscar un valor en un arreglo no ordenado?
O(1)
O(n)
O(log n)
O(n²)
O(n)
8.
Insertar un elemento al inicio de un arreglo (desplazando los demás) tiene una complejidad temporal de ____.
Respuesta: ____________________________________________
O(n)
9.
Si ya se tiene un puntero al nodo en una lista enlazada, ¿qué operación se puede realizar en tiempo O(1)?
Insertar un nodo después de ese nodo
Eliminar el último nodo
Acceder al elemento en la posición media
Buscar un valor
Insertar un nodo después de ese nodo
10.
¿Cuál es una desventaja de los arreglos frente a las listas enlazadas?
Acceso más rápido a los elementos
Inserción y eliminación en posiciones arbitrarias es más lenta
Cada elemento ocupa más memoria en el arreglo
Son más difíciles de implementar
Inserción y eliminación en posiciones arbitrarias es más lenta
11.
Una estructura de datos que utiliza nodos conectados por referencias se llama una lista ____.
Respuesta: ____________________________________________
enlazada
12.
Si se declara un arreglo bidimensional int arr[3][4], ¿cuántos elementos contiene?
7
12
16
3
12
13.
¿Cuál es la complejidad de eliminar el primer elemento de una lista enlazada (teniendo una referencia a la cabeza)?
O(1)
O(n)
O(log n)
O(1)
14.
El proceso de convertir una lista enlazada en un arreglo implica un recorrido ____.
Respuesta: ____________________________________________
secuencial
15.
¿Cuál es la complejidad temporal de buscar un elemento en un arreglo ordenado usando búsqueda binaria?
O(1)
O(n)
O(log n)
O(n²)
O(log n)
16.
En la mayoría de los lenguajes de programación, los elementos de un arreglo bidimensional se almacenan en memoria en orden:
Por filas (row-major)
Por columnas (column-major)
Aleatorio
Por filas (row-major)
17.
El número de elementos que contiene un arreglo se denomina su ____.
Respuesta: ____________________________________________
tamaño
18.
¿Cuál de las siguientes estructuras NO se puede usar para implementar una pila (stack)?
Arreglo
Lista enlazada
Árbol binario
Arreglo dinámico
Árbol binario
19.
En un arreglo dinámico, ¿qué suele ocurrir cuando se queda sin capacidad?
Se duplica el tamaño
Se llena un error
Se descartan los elementos sobrantes
Se reduce a la mitad
Se duplica el tamaño
20.
¿Cuál es la complejidad temporal de insertar un elemento en una lista enlazada si no se tiene una referencia a la posición de inserción?
O(1)
O(n)
O(log n)
O(n²)
O(n)
Respuestas
-
A.
Almacena elementos del mismo tipo en memoria contigua
-
B.
0
-
B.
O(1)
-
O(1)
-
B.
Su tamaño es fijo una vez definido
-
A.
Datos y un puntero al siguiente nodo
-
B.
O(n)
-
O(n)
-
A.
Insertar un nodo después de ese nodo
-
B.
Inserción y eliminación en posiciones arbitrarias es más lenta
-
enlazada
-
B.
12
-
A.
O(1)
-
secuencial
-
C.
O(log n)
-
A.
Por filas (row-major)
-
tamaño
-
C.
Árbol binario
-
A.
Se duplica el tamaño
-
B.
O(n)