Estructuras de datos con políticas de acceso

Pila (LIFO – Último en Entrar, Primero en Salir)

Una pila es una estructura de datos lineal que sigue el principio LIFO, lo que significa que el último elemento que se inserta es el primero en ser eliminado.

Operaciones Básicas:

  • Push: Agrega un elemento en la parte superior de la pila.
  • Pop: Elimina y devuelve el elemento en la parte superior de la pila.
  • Top/Peek: Devuelve el elemento en la parte superior de la pila sin eliminarlo.
  • isEmpty: Verifica si la pila está vacía.

Uso en Problemas: Las pilas se utilizan en situaciones en las que se requiere mantener un historial de acciones o valores temporales, como en la evaluación de expresiones matemáticas y en la implementación de algoritmos recursivos.

Complejidad O Grande:

  • Push: O(1)
  • Pop: O(1)
  • Top/Peek: O(1)
  • isEmpty: O(1)

Cola (FIFO – Primero en Entrar, Primero en Salir)

Una cola es una estructura de datos lineal que sigue el principio FIFO, lo que significa que el primer elemento que se inserta es el primero en ser eliminado.

Operaciones Básicas:

  • Enqueue: Agrega un elemento al final de la cola.
  • Dequeue: Elimina y devuelve el elemento en el frente de la cola.
  • Front/Peek: Devuelve el elemento en el frente de la cola sin eliminarlo.
  • isEmpty: Verifica si la cola está vacía.

Uso en Problemas: Las colas se utilizan en situaciones en las que es importante mantener el orden de llegada de elementos, como en la gestión de tareas en una impresora y en la implementación de algoritmos de búsqueda en anchura (BFS).

Complejidad O Grande:

  • Enqueue: O(1)
  • Dequeue: O(1)
  • Front/Peek: O(1)
  • isEmpty: O(1)