Colas informaticas
Click here to load reader
-
Upload
david-a-moreno-a -
Category
Documents
-
view
1.869 -
download
4
Transcript of Colas informaticas
![Page 1: Colas informaticas](https://reader038.fdocuments.co/reader038/viewer/2022100500/557b1ed6d8b42a796a8b4815/html5/thumbnails/1.jpg)
UNIVERSIDAD TECNOLOGICA ISRAELFACULTAD DE SISTEMAS
COLA INFORMARICAMAYRA COLLAHUAZODAVID MORENO
LENGUAJE Y ANÁLISIS 1
![Page 2: Colas informaticas](https://reader038.fdocuments.co/reader038/viewer/2022100500/557b1ed6d8b42a796a8b4815/html5/thumbnails/2.jpg)
COLAS
Es una lista lineal de elementos en la que las operaciones de insertar y eliminar se realizan en diferentes extremos de la cola.Trabajan con filosofía FIFO ( First In - First out).
Ejemplos:
Cola de automóviles esperando servicio en una gasolineraCola de clientes en una ventanilla del banco para pagar un servicioCola de programas en espera de ser ejecutados por una computadora.
![Page 3: Colas informaticas](https://reader038.fdocuments.co/reader038/viewer/2022100500/557b1ed6d8b42a796a8b4815/html5/thumbnails/3.jpg)
TIPOS DE COLAS
Cola simple: Estructura lineal donde los elementos salen en el mismo orden en que llegan.
Cola circular: Representación lógica de una cola simple en un arreglo.
Cola de Prioridades: Estructura lineal en la cual los elementos se insertan en cualquier posición de la cola y se remueven solamente por el frente.
Cola Doble (Bicola): Estructura lineal en la que los elementos se pueden añadir o quitar por cualquier extremo de la cola (cola bidireccional).
![Page 4: Colas informaticas](https://reader038.fdocuments.co/reader038/viewer/2022100500/557b1ed6d8b42a796a8b4815/html5/thumbnails/4.jpg)
Operaciones básicas en Colas SimplesInsertar.- Almacena al final de la cola el
elemento que se recibe como parámetro.
Eliminar.- Saca de la cola el elemento que se encuentra al frente.
Vacía.- Regresa un valor booleano indicando si la cola tiene o no elementos (true – si la cola esta vacía, false – si la cola tiene al menos un elemento).
Llena.- Regresa un valor booleano indicando si la cola tiene espacio disponible para insertar nuevos elementos ( true – si esta llena y false si existen espacios disponibles).
![Page 5: Colas informaticas](https://reader038.fdocuments.co/reader038/viewer/2022100500/557b1ed6d8b42a796a8b4815/html5/thumbnails/5.jpg)
Operaciones:
A
BA
A B C
B C
B C D
C D
1.- Insertar A
2.- Insertar B
Estado de la cola
3.- Insertar C
4.- Remover Elemento
5.- Insertar D
6.- Remover Elemento
Inicio: Cola Vacía
![Page 6: Colas informaticas](https://reader038.fdocuments.co/reader038/viewer/2022100500/557b1ed6d8b42a796a8b4815/html5/thumbnails/6.jpg)
Implementación de ColasArreglo
con frente fijo.con frente movible.
circular.Listas ligadas
![Page 7: Colas informaticas](https://reader038.fdocuments.co/reader038/viewer/2022100500/557b1ed6d8b42a796a8b4815/html5/thumbnails/7.jpg)
Las colas pueden ser representadas en arreglos de una dimensión (vector) manteniendo dos variables que indiquen el FRENTE y FINAL de los elementos de la cola.
A F S D Z
Frente Final
0 1 2 3 4 5
Representación usando arreglos
![Page 8: Colas informaticas](https://reader038.fdocuments.co/reader038/viewer/2022100500/557b1ed6d8b42a796a8b4815/html5/thumbnails/8.jpg)
Cuando la cola esta vacía las variables frente y final son nulos y no es posible remover elementos.
Cuando la cola esta llena ( frente = 0 y final = n-1) no es posible insertar elementos nuevos a la cola.
Cuando se remueven elementos el frente puede incrementarse para apuntar al siguiente elemento de la cola (implementación con frente móvil) o los elementos en la cola pueden desplazarse una posición adelante (implementación con frente fijo)
Recuperación de espacio: Cuando no hay espacios libres al final del arreglo los elementos pueden ser desplazados para desocupar posiciones en un extremo del arreglo o se puede manejar una estructura circular.
![Page 9: Colas informaticas](https://reader038.fdocuments.co/reader038/viewer/2022100500/557b1ed6d8b42a796a8b4815/html5/thumbnails/9.jpg)
Suponer que usamos un arreglo de 5 posiciones. Usando la representación de frente fijo y frente movible.
A B CFrente
Final
Al remover un elemento:
B C
Frente Final
B C
Frente Final
Frente fijo Frente movible
![Page 10: Colas informaticas](https://reader038.fdocuments.co/reader038/viewer/2022100500/557b1ed6d8b42a796a8b4815/html5/thumbnails/10.jpg)
Insertar elemento D
B C D
Frente Final
B C
Frente Final
B C D
B C
Frente Final
Frente Final
![Page 11: Colas informaticas](https://reader038.fdocuments.co/reader038/viewer/2022100500/557b1ed6d8b42a796a8b4815/html5/thumbnails/11.jpg)
Insertar elemento E
B C D E
Frente Final
Insertar elemento F
B C D E F
Frente Final
Insertar elemento G
Cola llena!!!!
B C D E
Frente Final
B C D E F
Frente Final
![Page 12: Colas informaticas](https://reader038.fdocuments.co/reader038/viewer/2022100500/557b1ed6d8b42a796a8b4815/html5/thumbnails/12.jpg)
Cola Circular
Es una representación lógica
de la cola en un arreglo.
El frente y final son movibles.
Cuando el frente o final llegan al
extremo se regresan a la primera posición
del arreglo.
C D E
Frente Final
F C D E
FrenteFinal
C D
Frente Final
B C D
Frente Final
Remover
Insertar E
Insertar F
Cola inicial
![Page 13: Colas informaticas](https://reader038.fdocuments.co/reader038/viewer/2022100500/557b1ed6d8b42a796a8b4815/html5/thumbnails/13.jpg)
Representación de colas Usando memoria estática: arreglos con tamaño fijo y frente fijo o movible o representación circular.
Usando memoria dinámica: Listas ligadas.
B C D E F
Frente
Final
0 1 2 3 4
B C D
Frente
Final
E F