Muchos programas necesitan almacenar elementos de forma ordenada, pero también requieren una regla que determine qué elemento se extraerá a continuación. Esta regla es importante porque influye en el comportamiento del código bajo carga, en la percepción de los retrasos por parte del usuario y en la facilidad o dificultad para implementar determinadas funcionalidades.
Para comprender mejor esta regla, analiza los siguientes escenarios del mundo real y céntrate en la norma de orden que aplica cada uno de ellos.
Una vez que se comprende la regla, es posible predecir el comportamiento. El botón de retroceso devuelve la página más reciente porque el sistema siempre elimina primero la entrada más nueva, mientras que una cola de impresión completa primero el trabajo más antiguo porque el sistema elimina primero la entrada más antigua.
Una pila (stack) elimina primero el elemento añadido más recientemente; es decir, el último en entrar es el primero en salir (LIFO, por sus siglas en inglés). Una cola (queue) elimina primero el elemento añadido hace más tiempo; es decir, el primero en entrar es el primero en salir (FIFO, por sus siglas en inglés).
Explore la comparación lado a lado y preste atención a qué extremo acepta inserciones y cuál permite eliminaciones.