3.11. El tipo abstracto de datos Cola

El tipo abstracto de datos Cola está definido por la siguiente estructura y operaciones. Una cola está estructurada, como se dijo antes, como una colección ordenada de ítems que son agregados en un extremo llamado “final” y removidos del otro, denominado “frente”. Las colas obedecen un ordenamiento FIFO. Las operaciones de cola están dadas a continuación.

Por ejemplo, si asumimos que c es una cola que se ha creado y está vacía, entonces la Tabla 1 muestra los resultados de una secuencia de operaciones de cola. El contenido de la cola se muestra de tal manera que el frente está a la derecha. 4 fue el primer elemento agregado a la cola por lo que es el primer elemento devuelto por avanzar.

Tabla 1: Ejemplo de operaciones de Cola
Operación de Cola Contenido de la cola Valor devuelto
c.estaVacia() [] True
c.agregar(4) [4]  
c.agregar('perro') ['perro',4]  
c.agregar(True) [True,'perro',4]  
c.tamano() [True,'perro',4] 3
c.estaVacia() [True,'perro',4] False
c.agregar(8.4) [8.4,True,'perro',4]  
c.avanzar() [8.4,True,'perro'] 4
c.avanzar() [8.4,True] 'perro'
c.tamano() [8.4,True] 2
Next Section - 3.12. Implementación de una cola en Python