You are on page 1of 11

Una cola es una estructura de También es llamado estructura

datos, caracterizada por ser una FIFO (del inglés First In First Out),
secuencia de elementos en la que debido a que el primer elemento en
la operación de inserción push se entrar será también el primero en
realiza por un extremo y la salir.
operación de extracción pop por
el otro.
Se utilizan en sistemas
informáticos, transportes y
operaciones de investigación
(entre otros), dónde los objetos,
personas o eventos son tomados
como datos que se almacenan y
se guardan mediante colas para
su posterior procesamiento
REPRESENTACIÓN DE LAS CO
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
Los elementos se eliminan (se quitan) de
la cola en el mismo orden en que se
almacenan y, por consiguiente, una cola es
una estructura de tipo FIFO (First Input
First Output) porque el primer elemento
que entra a la cola es el primero que sale.
Las colas se representan por listas
enlazadas o por arrayas. Se necesitan dos
punteros: frente (f) y final(r), y la lista o
arraya de “n” elementos
OPERACIONES BÁSICAS DE LAS CO
Las operaciones básicas de las colas son:
 Crear: se crea la cola vacía.
 Encolar (añadir, entrar, push): se añade un elemento a la cola.
Se añade al final de esta.
 Desencolar (sacar, salir, pop): se elimina el elemento frontal de
la cola, es decir, el primer elemento que entró.
 Frente (consultar, front): se devuelve el elemento frontal de la
cola, es decir, el primero elemento que entró.
APLICACIONES DE LAS COLAS.

Esta estructura de datos se usa en muchos


sistemas operativos, por ejemplo Unix, para
llevar el control
de la ejecución de procesos, cada proceso en el
sistema es almacenado en una lista y esta se va
recorriendo, dándole un pequeño tiempo del
microprocesador a cada proceso, durante la
fracción de
segundo de cada proceso este asume que tiene el
control total del procesador.
COLA CIRCULAR O ANILLO
Una cola circular o anillo es
una estructura de datos en la
que los elementos están de
forma circular y cada
elemento tiene un sucesor y
un predecesor. Los
elementos pueden
consultarse, añadirse y
eliminarse únicamente desde
la cabeza del anillo que es
una posición distinguida.
Esta avanza en el sentido de
las agujas del reloj.
En la figura mostrada muestra una cola
circular con un solo dato almacenado. La
variable “final” es la posición en donde se
hizo la última inserción. Después que se
ha producido una inserción, final se mueve
circularmente a la derecha.
COLA DE PRIORIDADE
Una cola de prioridades se utiliza para que los elementos se atienden en
el orden indicado por una prioridad asociada a cada uno. Si varios
elementos tienen la misma prioridad, se atenderán de modo convencional
según la posición que ocupen. Este tipo especial de colas tienen las
mismas operaciones que las colas, pero con la condición de que los
elementos se atienden en orden de prioridad.
DOBLE COLA (BICOLA
Es un tipo de cola especial que Existen dos tipos de la doble cola:
permiten la inserción y eliminación de · Doble cola de entrada
elementos de ambos extremos de la restringida: acepta inserciones solo
cola. Puede representarse a partir de al final de la cola.
un vector y dos índices, siendo su · Doble cola de salida
representación más frecuente una lista restringida: acepta eliminaciones
circular doblemente enlazada. Todas solo al frente de la cola
las operaciones de este tipo de datos
tienen coste constante.
TIPO COLA IMPLEMENTADO COMO ARREG

La figura de arriba, muestra la forma de implementar una cola, como


arreglo, en la que cada casilla, representa una estructura
compuesta por el tipo de dato a guardar (o bien otra estructura).
Las variables q.rear y q.front, se van modificando cada vez que
añadimos o eliminamos datos de nuestra cola.
Para determinar la cantidad de elementos en cualquier momento
utilizamos la expresión:
Cant=q.rear-q.front+1
GRACIAS POR SU ATENCIÓN