Está en la página 1de 6

Cola Circular

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.

Ejemplo:
La cola es una estructura de datos, donde la inserción del ítem se hace en un final
(fin de la cola) y la recuperación /borrado de elementos se hace otro al final(el
inicio de la cola).como el primer elemento insertado es el primero en ser
recuperado. Las colas se refieren en first in first out.
La cola lineal de la figura anterior almacena cuatro enteros, con el entero 1 en
primer lugar. Esa cola está llena y no puede almacenar más datos adicionales
porque rear identifica la parte final de la cola. La razón de la posición vacía, que
identifica front, implica el comportamiento lineal de la cola. Inicialmente, front y
rear identifican la posición más a la izquierda, lo que indica que la cola está vacía.
Para almacenar el entero 1, rear avanza una posición hacia la derecha y almacena
1 en esa posición. Para recuperar/borrar el entero 1, front avanza una posición
hacia la derecha.

La cola circular de la figura anterior tiene siete datos enteros, con el entero 1
primero. Esta cola está llena y no puede almacenar más datos hasta que front
avance una posición en sentido horario (para recuperar el entero 1) y rear avance
una posición en la misma direción (para identificar la posición que contendrá el
nuevo entero). Al igual que con la cola lineal, la razon de la posición vacía, que
identifica front, implica el comportamiento circular de la cola. Inicialmente, front y
rear identifican la misma posición, lo que indica una cola vacía. Entonces rear
avanza una posición por cada nueva inserción. De forma similar, front avanza una
posición por cada recuperación/borrado.

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 cosultarse, añadirse y eliminarse unicamente 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.

Bueno este es un ejemplo de una cola circular , pero para demostrar como es su
funcionamiento es de un tamaño predefinido, en este caso es una cola estatica.
Conclusión
Lo que entendí de las pilas circulares es q trabajan igual q la cola normal, nada,
mas este almacena datos de forma circular y almacena el dato conforme el front
va avanzando ese front avanza mientras vas eliminando datos y vas más espacio
para ir almacenando los datos.

Bicola o Cola Doble


La bicola o doble cola es un tipo de cola especial que permiten la inserción y
eliminación de elementos de ambos extremos de la cola.

Puede representarse a partir de un vector y dos índices, siendo su representación


más frecuente una lista circular doblemente enlazada.

Todas las operaciones de este tipo de datos tienen coste constante.

Una cola doble es una estructura de datos en la cual las operaciones de agregar y
retirar se practican por ambos lados.
Una cola doble es una estructura en la que, por la forma en que se realizan las
operaciones, puede comportarce como pila o como cola.

Una lista doblemente enlazada es una lista lineal en la que cada nodo tiene dos
enlaces, uno al nodo siguiente, y otro al anterior.

Las listas doblemente enlazadas no necesitan un nodo especial para acceder a


ellas, pueden recorrerse en ambos sentidos a partir de cualquier nodo, esto es
porque a partir de cualquier nodo, siempre es posible alcanzar cualquier nodo de
la lista, hasta que se llega a uno de los extremos.

COLAS DOBLES
Existe una variable de la cola simple que es la bicola (doble cola). Es una cola
bidimensional en la que las inscripciones y eliminaciones se pueden realizar en
cualquiera de los dos extremos de la cola.

Inserción Eliminación
Inicio Final

Eliminación Inserción

Existen dos variantes de la bicola (cola doble):

Cola doble con entrada restringida: Acepta valor, inserciones solo al final de la
columna.

Cola doble con salida restringida: Acepta eliminaciones solo al inicio de la cola.

Indica Memoria Dinámica

Crear I I=NULL

Crear M M=NULL

Crear F F=NULL

Mientras si (Quiere dar de alta)

Si I=Null Entonces

Crear Nodo I

I sig=NULL

M=I

F=I

Si no

Crear nodo F

Fsig =M

M=F

COLA DOBLE CON SALIDA REESTRINGIDA

Acepta eliminaciones solo al inicio de la cola.

I MF

Crear I
Crear F

Crear M

I=NULL, F= NULL , M= NULL

Si I=NULL

Crear Nodo I

Isig1= NULL

Isig2 = NULL

F=I

M=I

Si no

Crear nodo F

Msig1 =F

Fsig2=M

Fsig1=I

M=F

Isig2=F

Solo se da de baja al inicio de la cola

Solo se da de alta al final de la cola.

I MF

BAJA AL FINAL DE LA COLA

M= Fsig2

Msig1=I

Isig2 = M
F=M

BAJA AL PRINCIPIO DE LA COLA

M=I

I=Msig1

Fsig1=M

Msig2=F

I=M

M=F

También podría gustarte