Una cola es una estructura de datos que funciona bajo el principio FIFO (primero en entrar, primero en salir). Los elementos se agregan al final de la cola mediante la operación add y se eliminan del frente mediante la operación poll. Las colas se usan comúnmente para simular procesos por lotes como cajeros automáticos o líneas de producción.
2. Una cola (también llamada fila) es
una estructura de datos,
caracterizada por ser una
secuencia de elementos en la que
la operación de inserción push se
realiza por un extremo y la
operación de extracción pop por el
otro. También se le llama
estructura FIFO (del inglés First In
First Out), debido a que el primer
elemento en entrar será también
el primero en salir.
Extraído de: https://es.wikipedia.org/wiki/Cola_(inform%C3%A1tica)
Cola: Concepto
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez
3. Para el manejo de los datos
cuenta con dos operaciones
básicas: adicionar (add), que
coloca un objeto al final de la
cola, y su operación
inversa, retirar o sacar (poll),
que retira el primer elemento
de la fila.
En cada momento sólo se
tiene acceso al primer
elemento de la fila, es decir, al
primer objeto.
Extraído de: https://es.wikipedia.org/wiki/Pila_(inform%C3%A1tica)
Cola: Funcionamiento
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez
4. Colas 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. Existen dos operaciones de
rotaciones, una en cada sentido, de manera que la
cabeza del anillo pasa a ser el elemento sucesor, o
el predecesor, respectivamente, de la cabeza
actual. https://es.wikipedia.org/wiki/Cola_circular
Cola: Tipos
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez
Cola Simple: estructura lineal donde los
elementos salen en el mismo orden en que
entran.
5. Cola: Tipos
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez
Cola Doble o Bicola: son colas en donde los
elementos se pueden añadir y quitar por ambos
extremos; se les llama DEQUE (Double Ended
QUEue). Para representar las bicolas lo podemos
hacer con un array circular con Inicio y Fin que
apunten a cada uno de los extremos.
Cola de prioridad: En ellas, los elementos se
atienden en el orden indicado por una prioridad
asociada a cada uno, sin importar el orden en que
se agreguen. Si varios elementos tienen la misma
prioridad, se atenderán de modo convencional
según la posición que ocupen. La prioridad es
algún dato de los elementos que permita
Ordenarlos.
7. • Cola de los clientes en los bancos y cajeros
automáticos
• Cola de programas en espera de ser
ejecutados por una computadora
Cola: Usos
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez
26. • Crear (constructor): crea la cola vacía.
• Tamaño (size): regresa el número de elementos de la
cola.
• Adicionar (add u offer): añade un elemento a la cola.
• Retirar (poll o remove): lee y retira el primer elemento
de la cola.
• Leer primero (peek): lee el primer elemento de la cola
sin retirarlo.
• Vacía (isEmpty): devuelve cierto si la cola está sin
elementos o falso en caso de que contenga alguno.
Extraído de: https://es.wikipedia.org/wiki/Cola_(inform%C3%A1tica)
Cola: Operaciones
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez
27. Cola: Operaciones
Descripción Operación Argumentos Retorno
Adicionar add Object boolean
Retirar el primero poll Ninguno Object
Leer el primero peek Ninguno Object
Verificar si esta vacía isEmpty Ninguno boolean
Cantidad elementos size Ninguno int
Estas Operaciones se implementaran usando
la clase LinkedList del paquete java.util
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez
31. Cola: Leer primero
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez
int x;
Integer dato = (Integer)c.peek();
x = dato.intValue();
x = 92
Leer primero (peek):
lee el elemento inicial de la cola sin
retirarlo.
Cola c
92 45 65
33. Cola: Sacar primero
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez
int x;
Integer dato = (Integer)c.poll();
x = dato.intValue();
x = 92
Leer primero (poll o remove):
lee el elemento inicial de la cola y
lo retira.
Cola c
92 45 65
34. • Implementación con un Vector
• Implementación sobre una Lista
Cola: Implementaciones
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez
35. • Imprimir una cola
• Hacer la copia de una cola
• Invertir una cola
• Verificar si esta un elemento
• Verificar si son iguales dos colas
• Verificar si esta Ordenada {Ascendente, Descendente}
• Sumar los valores de dos colas de números enteros
• Simulación de colas en supermercados o cajeros
automáticos
• Lista de solicitudes que se atienden en una organización
2017www.slideshare.net/emergar Ing. Emerson E. Garay Gómez
Cola: Ejemplos