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.
La 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 Algoritmo para Extraer
F < -- 1 Si F>A entonces
A <-- 0 mensaje (underflow) en caso contrario mensaje (frente/atrás) Algoritmo para Insertar si frente entonces x <-- cola[F] Si A=máximo entonces F <-- F+1 mensaje (overflow) en caso contrario en caso contrario x <-- cola[A] A <--A+1 A <-- A-1 cola[A]<-- valor ALGORITMOS DE SALIDA RESTRINGIDA
Algoritmo de Inicialización
F <--1 Algoritmo para Extraer
A <-- 0 Si F=0 entonces mensaje (underflow) Algoritmo para Insertar en caso contrario x <--cola[F] Si F>A entonces F <-- F+1 mensaje (overflow) en caso contrario mensaje (Frente/Atrás) si Frente entonces cola[F] <--valor en caso contrario A <-- A+1 cola[A] <--valor