colas

Páginas: 9 (2162 palabras) Publicado: 2 de octubre de 2014
Colas con prioridad (utilizando memoria estática)
Son una lista de elementos en la que los elementos se introducen por un extremo y se eliminan por otro. Los elementos se eliminan en el mismo orden en el que se insertaron. Por lo tanto el primer elemento en entrar a la cola será el primer elemento en salir. Debido a esta característica las colas reciben también el nombre de QUEUE o FIFO(First-In, First-Out: Primero en Entrar Primero en Salir). En la vida real existen numerosos casos de colas: personas esperando para usar un teléfono público, las personas que esperan para ser atendidas en la caja de un banco, etc.

Otras aplicaciones ligadas a la computación son: en las colas de Impresión, en el caso de que existiese una sola computadora para atender a varios usuarios, puede sucederque algunos de ellos soliciten los servicios de impresión al mismo tiempo o mientras el dispositivo está ocupado. En estos casos se forma una cola con los trabajos que esperan a ser impresos. Los mismos se irán imprimiendo en el ordenen que fueron llegando a la cola.

Al igual que las estructuras de pilas, las colas no existen como estructuras de datos estándares en los lenguajes deprogramación. En este caso se tratarán las colas como arreglos de elementos, en las cuales es necesario definir el tamaño de la cola y dos apuntadores. El primer apuntador se usará para acceder al primer elemento al cual le llamaremos F y el otro apuntador que guarde el último elemento y le llamaremos A. Además uno llamado MÁXIMO para definir el número máximo de elementos en la cola.
Ejemplo:
En lasiguiente figura se muestra una cola que ha guardado tres elementos:

X,Y,Z.



Existe un tipo de Cola llamada Colas de Prioridades; donde los elementos la posición de los elementos en la Cola está en función a un criterio predefinido; como en las colas de las discotecas en las que las jovencitas agraciadas siempre ingresan primero, sin importar la hora en la que hayan llegado.

En la siguienteimagen:


La flecha Rear apunta hacia el elemento de mayor valor, que tiene el índice 0 en el arreglo; mientras que la flecha Front apunta hacia el elemento de menor valor con índice nItems -1 en el arreglo de PriorityQ. Al ingresar un elemento mediante el método insert, debemos procurar que este criterio se mantenga; por lo que realizamos lo siguiente:


En caso el arreglo no tenga elementos,el nuevo elemento ingresado ocupará la posición 0 del arreglo. Al realizar un registro, siempre se incrementa el valor de nItems de modo que este atributo siempre contenga el número de elementos de la Cola.
En caso el arreglo no esté vacío, compararemos el elemento a ingresar con cada uno de los elementos del arreglo empezando por el menor-el de índice  (nItems  -1 )- desplazando los elementosexistentes hacia la derecha hasta encontrar el lugar apropiado para el nuevo elemento de modo que el arreglo se mantenga ordenado.

Puede almacenar lo que nosotros queramos, números, personas, documentos, cualquier cosa. Esta estructura de datos tiene muchas aplicaciones en la informática al igual que la pila, por ejemplo cuando mandan a imprimir varios documentos a una impresora, existe una colade impresión que sigue la filosofía, se imprimen los primeros documentos y si quiero imprimir un nuevo documento se adiciona al final de todos los documentos que están esperando a imprimirse.
Se implementa con arreglos (arrays) o con listas enlazadas respectivamente. Nosotros implementaremos haciendo de un arreglo bidimensional es decir de modo estático y al decir estático estamos diciendo quetendrá un límite para almacenar datos en la cola.
Para manipular elementos en el vector de la cola son necesarias variables que me digan en donde empiezan los elementos y otra en donde terminan, como tal vez estés pensando ¿porque no solo una? (una que me diga en donde termina asumiendo que siempre se empieza desde la posición 0 del arreglo), pues se puede implementar con solo una de estas...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • colo colo
  • Colo-Colo
  • colo colo
  • Colo colo
  • Colo-Colo
  • Colas
  • Cola
  • Colas

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS