Colas

peach

Tenia que ponerlo

Ok, antes de que hagan un chiste lo haré yo, una cola es el nombre más ridículo, perfecto y divertido para una estructura de datos.

Pero bueno, vamos a ponernos serios, las colas son estructuras de datos que almacenan datos de un mismo tipo, pero lo hacen de una manera muy especial.

Tienen un nombre que muchas veces ocupan en los libros de computación, las llaman estructuras FIFO (First In First Out) o en español: “Lo primero que entra es la primero que sale”.

Una cola es de verdad un buen nombre porque la estructura funciona igual que en la vida real, pues siguen sus dos principios básicos:

  • Al llegar a una cola tu siempre vas al final
  • Siempre se atiende al primero y así sucesivamente

Así que para hacer nuestra cola, haremos algo parecido a una lista, es más, haremos algo muy parecido y más simple.

(Si no sabes que es una lista no te preocupes, no es necesario, pero te puedo adelantar que son como colas con esteroides, capaces de hacer lo mismo que te enseñare ahora y más, así que quizá te guste echarles un vistazo después, solo digo: Lección de Listas Enlazadas).

Colas.png


¿Cómo creamos una Cola como concepto?

Antes que programar ni nada así, vamos a hablar de ideas, imagina que tienes una información que quieres guardar:

Como por ejemplo un número o una letra:

Ahora vamos por la clave, los nodos.

Nodos

Vamos a meter cada información que queramos guardar en la cola en un nodo, esto es un nodo:

El nodo tiene dos partes:

listas-4

Partes del Nodo

  1. Dato: Representa el dato a almacenar.Puede ser de cualquier tipo; en este ejemplo se trata de una lista de enteros.
  2. Enlace: Es un puntero al siguiente elemento de la cola; con este puntero enlazamos con el sucesor, de forma que podamos construir la lista.

Así una cola no es más que esto, un montón de nodos unidos.

pilas-dibujos

Diagrama de una Cola

Y si, no son mas que una versión “de prueba” de una lista enlazada, estas estructuras las puedes revisar aquí.

 


Funciones Básicas de una Cola

ENQUEUE: Encolar

Es básicamente introducir algo en la cola, ósea añadir un elemento al final de la estructura

colas

 

UNQUEUE: Procesar una Cola

Esta operación se puede dividir en dos operaciones independientes:

procesarcola



Zona Dos: Código Real

Ok, ok, todo muy bonito hasta aquí, pero ahora es hora de ponernos a trabajar.

Esta parte sera algo, algo MUY largo, así que te recomiendo que veas el código completo y original que tengo en Github. Da click en el botón:

Codigo.png

 

 

Y ya esta, como te das cuenta estas estructuras sirven un propósito muy específico, así que espero que ya haya gustado esta lección.

Ahora si, estas listo para ver las listas enlazadas, esto se va a poner bueno.

 

 

btn1 btn
btn

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s