2. Una cola es una estructura de datos que almacena
elementos en una lista y permite acceder a los datos
por uno de los dos extremos de la lista (Fig. 15.4). Un
elemento se inserta en la cola (parte final) de la
lista y se suprime o elimina por la frente (parte inicial,
cabeza) de la lista. Las aplicaciones utilizan una
cola para almacenar elementos en su orden de
aparición o concurrencia
Fig.15.4
Colas
3. Es una estructura de tipo FIFO (first-iidfirs-out,
primero en ciitrar//Primero en
salir o bien primero en llegar/primero en ser
servido).
Las acciones que están permitidas en una cola son:
Colas
4. • AI igual que las pilas, las colas se pueden
implementar utilizando arrays o listas
enlazadas.
-La definición de una cola ha de
contener un array para almacenar los
elementos de la cola, y dos
marcadores o punteros (variables) que
mantienen las posiciones frente y final de
la cola
Colas
5. Una cola debe manejar diferentes tipos
de datos:
La clase Cola contiene una lista (listaQ) cuyo máximo
tamaño se determina por la constante MaxTamQ La
clase Cola contiene una lista (listaQ) cuyo máximo
tamaño se determina por la constante MaxTamQ.
Se definen dos tipos de variables puntero o
marcadores, frente y final.
Las operaciones típicas de la cola son: InsertarQ,
EliminarQ, Qvacia, Qllena, y FrenteQ. Colas
6. La declaración que se ha hecho del tipo Cola
contiene un array para el almacenamiento de los
elementos de la cola y dos marcadores o punteros:
uno apuntando a la posición de la cabeza o
cabecera de la cola y la otra al primer espacio vacío
a continuación del final de la cola.
Colas
7. Del final, donde se almacenó el Último elemento añadido. Una cola
vacía serepresenta por la condición cabeza = final. El array se
almacena de modo natural en la memoria tal como un bloque lineal
de n elementos. Se necesitan dos marcadores (punteros) cabeza y,final
para in dicar la posición del elemento que precede a la cabeza y la
posición.
El medio más eficiente, sin embargo, para almacenar una
cola en un array, es utilizar un tipo especial de array que
junte el extremo final de la cola con su extremo cabeza. Tal
array se denomina array circular
Colas