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.
Cola()
crea una nueva cola que está vacía. No requiere parámetros y devuelve una cola vacía.agregar(item)
agrega un nuevo ítem al final de la cola. Requiere el ítem y no devuelve valor.avanzar()
elimina el ítem del frente de la cola. No require parámetros y devuelve el ítem que se eliminó. La cola es modificada.estaVacia()
verifica si la cola está vacía. No requiere parámetros y devuelve un valor booleano.tamano()
devuelve el número de ítems en la cola. No requiere parámetros y devuelve un entero.
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
.
Operación de Cola |
Contenido de la cola |
Valor devuelto |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|