Lección 11: Pilas y colas
Empecemos en la cocina: imagina una pila de platos: colocas encima y tomas de encima, así que el último que entró es el primero que sale. Eso es una 'pila' (stack), LIFO. Ahora imagina una fila de caja: el primero en llegar, el primero en ser atendido: eso es una 'cola' (queue), FIFO. En Python una
Una pila es como un montón de platos: colocas encima y tomas de encima, el último colocado sale primero. Una cola es como una fila de caja: quien llegó primero es atendido primero. Esa es toda la diferencia: de qué extremo tomas.
- pila (stack)
- Una estructura LIFO: el último en entrar, el primero en salir. En Python: una lista con append y pop al final, ambas O(1).
- cola (queue)
- Una estructura FIFO: el primero en entrar, el primero en salir. En Python: collections.deque con append y popleft, ambas O(1).
- deque (cola de doble extremo)
- Una cola de doble extremo del módulo collections; permite agregar y quitar en O(1) en ambos extremos, lo que la hace la cola FIFO eficiente.