Colas

Son listas ordenadas en las que sólo se pueden añadir elementos por el final y eliminar por el principio debido a su tipo de estructura FIFO (primero en entrar, primero en salir) por ello no se permite el acceso aleatorio a ninguno de sus elementos más que por el principio o fin de la misma. Así mismo, los elementos pueden ser insertados en cualquier momento, pero solo el elemento que ha permanecido el mayor tiempo puede ser extraído.

Tipos de colas:


• Colas circulares: En estas el último elemento y el primero están unidos.

• Colas de prioridad: Los elementos se atienden en el orden indicado por una prioridad asociada a cada uno. Si varios elementos tienen la misma prioridad, se atenderán de modo convencional según la posición que ocupen. Hay 2 formas de implementarlas: Añadiendo un campo a cada nodo con su prioridad ó creando tantas colas como prioridades haya, y almacenar cada elemento en su cola.


• Bicolas: son colas en donde los nodos se pueden añadir y quitar por ambos extremos; se les llama DEQUE (Double Ended QUEue). Estas se pueden representar mediante un array circular con inicio y fin que apunten a cada uno de los extremos.

• Bicolas de entrada restringida: Son aquellas donde se puede insertar por el final, aunque podemos eliminar al inicio ó al final.

• Bicolas de salida restringida: Son aquellas donde sólo se elimina por el final, aunque se puede insertar al inicio y al final.


Operaciones básicas:


 Crear: Crea la cola vacía.

• Encolar (añadir): Añade un elemento a la cola. Se añade al final de esta.

• Desencolar (eliminar): Elimina el elemento frontal de la cola, es decir, el primer elemento que entró.

 Consultar (front): Devuelve el elemento frontal de la cola, es decir, el primer elemento que entró.

• Tamaño: Muestra el número de objetos en la cola

No hay comentarios:

Publicar un comentario