Estructuras de Datos Dinámicas Lineales. Flashcards
¿Qué es una lista enlazada?
Una lista enlazada es una estructura de datos donde cada elemento (nodo) contiene un valor y un puntero al siguiente nodo, permitiendo almacenar elementos de forma no contigua en memoria.
¿Cómo se define un nodo en una lista simplemente enlazada en Java?
class Nodo {
int valor;
Nodo siguiente;
Nodo(int valor) { this.valor = valor; this.siguiente = null; } }
¿Qué es una lista doblemente enlazada?
Es una lista donde cada nodo tiene dos punteros: uno al nodo siguiente y otro al nodo anterior, permitiendo la navegación en ambas direcciones.
Menciona una ventaja de las listas doblemente enlazadas sobre las simplemente enlazadas.
Permiten la navegación en ambas direcciones, lo que facilita operaciones como recorrer la lista desde el final hacia el principio.
¿Qué es una pila (Stack) y cuál es su principio básico?
Una pila es una estructura de datos que sigue el principio LIFO (Last In, First Out), donde el último elemento en entrar es el primero en salir.
¿Cómo se realiza la operación push en una pila implementada con ArrayList en Java?
void push(int valor) {
elementos.add(valor);
}
¿Qué es una cola (Queue) y cuál es su principio básico?
Una cola es una estructura de datos que sigue el principio FIFO (First In, First Out), donde el primer elemento en entrar es el primero en salir.
¿Cómo se realiza la operación enqueue en una cola implementada con LinkedList en Java?
cola.add(10); // Encolar el elemento 10
¿Qué ventaja tiene implementar una pila o cola con LinkedList en lugar de ArrayList?
LinkedList es más eficiente en términos de memoria para estructuras dinámicas, ya que no requiere gestionar la capacidad o el redimensionamiento del array, aunque puede ser más lento en acceso debido a la falta de contigüidad en memoria.
¿Cuál es la diferencia entre una pila y una cola?
En una pila (LIFO), el último elemento agregado es el primero en salir, mientras que en una cola (FIFO), el primer elemento agregado es el primero en salir.