ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Teoría De Colas


Enviado por   •  19 de Agosto de 2013  •  434 Palabras (2 Páginas)  •  310 Visitas

Página 1 de 2

Cola Circular

Las colas lineales tienen un grave problema, como las extracciones sólo pueden realizarse por un extremo, puede llegar un momento en que el apuntador A sea igual al máximo número de elementos en la cola, siendo que al frente de la misma existan lugares vacíos, y al insertar un nuevo elemento nos mandará un error de overflow (cola llena).

Para solucionar el problema de desperdicio de memoria se implementaron las colas circulares, en las cuales existe un apuntador desde el último elemento al primero de la cola.

La representación gráfica de esta estructura es la siguiente:

La condición de vacío en este tipo de cola es que el apuntador F sea igual a cero.

Las condiciones que debemos tener presentes al trabajar con este tipo de estructura son las siguientes:

• Over flow, cuando se realice una inserción.

• Under flow, cuando se requiera de una extracción en la cola.

• Vacio

ALGORITMO DE INICIALIZACIÓN

F < -- 0

A<-- 0

ALGORITMO PARA INSERTAR

Si (F+1=A) ó (F=1 y A=máximo) entonces

mensaje (overflow)

en caso contrario

inicio

si A=máximo entonces

A<--1

cola[A]<-- valor

en caso contrario

A <--A+1

cola[A]<-- valor

si F=0 entonces

F <-- 1

fin

ALGORITMO PARA EXTRAER

Si F=0 entonces

mensaje (underflow)

en caso contrario

x <-- cola[F]

si F=A entonces

F <-- 0

A<-- 0

en caso contrario

si F=máximo entonces

F <--1 en caso contrario F <-- F+1

Doble Cola

Esta estructura es una cola bidimensional en que las inserciones y eliminaciones se pueden realizar en cualquiera de los dos extremos de la bicola. Gráficamente representamos una bicola de la siguiente manera:

Existen dos variantes de la doble cola:

• Doble cola de entrada restringida.

• Doble cola de salida restringida.

El primer variante sólo acepta inserciones al final de la cola, y la segunda acepta eliminaciones sólo al frente de la cola

ALGORITMOS DE ENTRADA RESTRINGIDA

Algoritmo de Inicialización

F < -- 1

A <-- 0

Algoritmo para Insertar

Si A=máximo entonces

mensaje (overflow)

en caso contrario

A <--A+1

cola[A]<-- valor

Algoritmo para Extraer

Si F&gtA entonces

mensaje (underflow)

en caso contrario

mensaje (frente/atrás)

si frente entonces

x <-- cola[F]

F <-- F+1

en caso contrario

x <-- cola[A]

...

Descargar como (para miembros actualizados) txt (3 Kb)
Leer 1 página más »
Disponible sólo en Clubensayos.com