Filas y Colas
Colas Circulares
Definición
• Una cola circular o anillo es una estructura de datos en la que
los elementos están de forma circular y cada elemento tiene
unsucesor 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 derotaciones, 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.
• El objetivo de unacola circular es aprovechar al máximo el
espacio del arreglo.
• La idea es insertar elementos en las localidades previamente
desocupadas.
• La implementación tradicional consideradejar un espacio
entre el frente y la cola
Cola circular – insertar
0
1
1
2
2
3
3
4
Frente=0
n=4
4
5
6
7
Ubicación=(frente+n)%máximo
4=(0+4)%10
8
9
Máximo=10
Colacircular – insertar
0
1
1
2
2
3
3
4
4
5
5
6
7
Frente=0
n=4
Ubicación=(frente+n)%máximo
4=(0+4)%10
8
9
Máximo=10
Cola circular – sacar
0
1
1
2
2
3
3
4Frente=0
n=4
4
5
6
7
frente=(frente+1)%máximo
1=(0+1)%10
8
9
Máximo=10
Cola circular – insertar
0
Frente=3
1
n=6
2
3
4
4
5
5
6
6
7
7
8
8
9
9Ubicación=(frente+n)%máximo
9=(3+6)%10
Máximo=10
Cola circular – insertar
0
Frente=3
1
n=6
2
3
4
4
5
5
6
6
7
7
8
8
9
9
10
Ubicación=(frente+n)%máximo
9=(3+6)%10
Máximo=10Cola circular – insertar
0
Frente=3
1
n=7
2
3
4
4
5
5
6
6
7
7
8
8
9
9
10
Ubicación=(frente+n)%máximo
0=(3+7)%10
Máximo=10
Cola circular – insertar
0
11Frente=3
1
n=7
2
3
4
4
5
5
6
6
7
7
8
8
9
9
10
Ubicación=(frente+n)%máximo
0=(3+7)%10
Máximo=10
Declaración de variables
Encolar elemento
Desencolar elemento
Regístrate para leer el documento completo.