Saltar al contenido

Modelo por capas

La interfaz de cola

Una cola es una interfaz:

  • encolar(x): x entra por el final;
  • desencolar(): sale y se devuelve el del principio;
  • frente(), vacía().

El orden que resulta es FIFO (first in, first out): el primero que entra es el primero que sale. Es el orden de una fila de personas.

Una cola con sus dos extremosFila horizontal de tres celdas: A, B y C. A está al frente, a la izquierda, y es la que sale con desencolar. C está al final, a la derecha; encolar mete un valor nuevo por ese lado. Llegaron en el orden A, B, C y saldrán en ese mismo orden.ABCdesencolar()encolar(x)frentefinalsale primeroentra últimoorden de llegada: A, B, C
Se entra por el final y se sale por el frente: el primero que llegó, A, es el primero que sale.

Sobre un array, encolar al final es O(1) amortizado, pero desencolar del principio desplaza todos los demás: O(n). Hace falta otra representación.

Encolas 4, 7 y 2, desencolas dos veces y encolas 9. ¿Qué devuelve frente()?