Clase colas

5
Fondo E C D Frent e Por aquí entra n Por aquí salen Frent e C E D Fondo Por aquí entra n Por aquí salen Una Cola es una estructura en donde cada elemento se suprime por el frente y son insertados por el fondo. Una Cola es el tipo FIFO (First In First Out), esto implica que el primer elemento en entrar será el primero en salir. Colas

Transcript of Clase colas

Page 1: Clase colas

Fondo

E CD

Frente

Por aquí entran

Por aquí salen

Frente

C ED

Fondo

Por aquí entran

Por aquí salen

Una Cola es una estructura en donde cada elemento se suprime por el frente y son insertados por el fondo. Una Cola es el tipo FIFO (First In First Out), esto implica que el primer elemento en entrar será el primero en salir.

Colas

Page 2: Clase colas

ACB

A

A

BC

A

Arrancamos con la cola vacía, sin

elementos.

En la cabecera no vemos elemento alguno.

Ya tenemos un primer

elemento agregado a la

cola.Podemos ver el elemento A en la cabecera (al

frente).

Al agregar B, éste queda detrás de A.

A, el primer elemento agregado,

sigue al frente; B queda oculto e

inaccesible.

Lo mismo pasa con C, que queda encolado

detrás de B.C deberá esperar a que

se desencolen A y B para llegar al frente.

B, ahora, queda en la cabecera, mientras C

sigue oculto tras éste, e inaccesible.

Podemos seguir así hasta vaciar la cola.

Pero, si viniese nuevamente A y lo agregásemos a la cola, ¿en qué posición quedaría?

A

Quedaría al final,

encolado detrás de C.

Al extraer el primer elemento insertado, B pasa

al frente.

Funcionamiento de una Cola

Page 3: Clase colas

Estados de una Cola

Cola Vacía

a) En la operación Mostrar

SI ULTIMO=0 ENTONCES IMPRIMIR(“La Cola está vacia”) SINO IMPRIMIR(“Mostrar los elementos de la Cola”) FIN-SI

b) En la operación Eliminar

SI ULTIMO=PENULTIMO ENTONCES IMPRIMIR(“La Cola está vacia”)SINO IMPRIMIR(“Eliminar elemento de la Cola”)FIN-SI

Page 4: Clase colas

Estados de una ColaCola Llena

Sucede cuando no hay más lugar para almacenar elementos

SI ULTIMO>MAX ENTONCES IMPRIMIR(“La Cola está llena”) SINO IMPRIMIR(“Hay espacio en la Cola…se puede insertar elemento”) FIN-SI

Algoritmo Insertar

//Ultimo, MAX, Cola (arreglo unidimensional)Insertar()SI Ultimo=MAX ENTONCES IMPRIMIR(“La cola está llena”)Sino IMPRIMIR(“Inserte un elemento en la Cola”) LEER(Cola(Ultimo)) Ultimo=Ultimo+1FIN-SIFIN-Funcion Insertar

Page 5: Clase colas

Algoritmo Mostrar

SI Ultimo=0 ENTONCES IMPRIMIR(“COLA ESTA VACIA”)DE OTRO MODO PARA Z=PENULTIMO,ULTIMO-1,1 IMPRIMIR(Cola(Z)) FIN-PARAFIN-SI

Algoritmo Eliminar

// Ultimo, Penultimo, Cola – arreglo entero SI Ultimo=Penultimo ENTONCES IMPRIMIR(“La cola está vacía”)SINO Penultimo=Penultimo+1 IMPRIMIR(“Elemento eliminado de la Cola”) FIN-SIFIN-Funcion Eliminar