Вы находитесь на странице: 1из 32

UNIVERSIDAD NACIONAL MAYOR DE

SAN MARCOS
FACULTAD DE CIENCIAS MATEMATICAS
E.A.P. COMPUTACION CIENTIFICA

COLAS

ALUMNA: FLOR PERALES APAICO


RECORDAR
TIPO ABSTRACTO DE DATOS.
Es un tipo de dato implementado en el algoritmo.

ARRAY.
Es una coleccin de variables del mismo tipo que se referencian
utilizando un nombre comn.

LISTA.
Es una coleccin lineal de datos.
Qu es una cola?

Es un tipo de dato abstracto que puede representarse


mediante un arreglo o lista, cuyos elementos se
introducen al final de la cola y se remueven al inicio
de la cola.
TIPO ABSTRACTO DE DATOS PARA UNA
COLA
Una cola es una coleccin lineal cuyos elementos se aaden por
un extremo y se eliminan por el otro. Se procesan mediante un
algoritmo FIFO(first in, first out; primero en entrar, primero en salir).
Las operaciones que podemos efectuar en una
cola son:
INTERFAZ QueueADT
DESCRIPCION UML

<<interface>>
Queue ADT

enqueue()
dequeue()
first()
isEmpty()
size()
toString()
UTILIZACION DE COLAS PARA
CIFRADO
Qu es el cifrado?
Cifrar es transformar informacin con el fin de protegerla de
miradas ajenas.

Un mecanismo de cifrado de Cesar es una tcnica simple de


codificacin de mensajes que se basa en desplazar cada letra
de un mensaje segn el alfabeto una cantidad constante de
posiciones k. Para decodificar el mensaje, se desplaza hacia
atrs cada letra el mismo numero de caracteres.
Julio Cesar utilizo realmente este tipo de cifrado en algunas
cartas secretas de carcter administrativo(de aqu viene el
nombre de este mecanismo).Desafortunadamente, el cifrado de
Cesar es bastante fcil de romper. Solo hay 26 posibilidades para
desplazar los caracteres y el cdigo puede romperse probando
los diversos valores de la clave hasta encontrar aquel que
funcione.
LinkedQueue <<interface>>
QueueADT
front
rear
enqueue() enqueue
dequeue() dequeue
first() first
isEmpty isEmpty
size size
toString toString

Codes

main(String[] args)
UTILIZACION DE LAS COLAS PARA
SIMULAR UN DESPACHO DE ENTRADAS
En las simulaciones, a menudo se utilizan colas para representar las filas de
espera.
UTILIZACION DE UNA COLA PARA UNA
ORDENACION RAIZ

Cualquier ordenacin esta basada en algn valor


concreto, denominado clave de ordenacin.
El numero de colas, o el numero de posibles valores, se
denomina raz o base.
Una ordenacin raz esta basada de forma inherente en el
procesamiento de colas.
IMPLEMENTACION DE COLAS MEDIANTE
ENLACES

La implementacin enlazada de una cola se simplifica si


utilizamos referencias al primer y ultimo elemento de la
lista enlazada.
//-----------------------------------------------------------
//
//-----------------------------------------------------------
public void enqueue (T element)
{
LinearNode<T> node = new LinearNode<T>(element);
if (isEmpty())
front = node;
else
rear.setNext (node);
rear = node;
count++;
}
//

public T dequeue() throws EmptyCollectionException


{
if (isEmpty())
throw new EmptyCollectionException (queue);
T result = front.getElement();
front = front.getNExt();
count--;
if (isEmpty())
rear = null
return result;
}
B C D E
IMPLEMENTACION DE LAS COLAS
MEDIANTE MATRICES

Puesto que las operaciones de una cola modifican


ambos extremos de la coleccin, el fijar un extremo en el
ndice 0 requiere que desplacemos los elementos.
//-----------------------------------------------------------
//
//
//
//-----------------------------------------------------------

public void enqueue (T element)


{
if (size() == queue.length)
expandCapacity();
queue[rear] = element;
rear++;
}
//-----------------------------------------------------------
//
//
//
//-----------------------------------------------------------

public void dequeue () throws EmptyCollectionException


{
if (isEmpty())
throw new EmptyCollectionException(queue);
T result = queue[0];
rear--;
// Desplazar los elementos
for (int scan=0; scan < rear; scan++)
queue[scan] = queue[scan + 1];
queue[rear] = null;
return result;
}
IMPLEMENTACION DE COLAS MEDIANTE
MATRICES CIRCULARES

Si tratamos las matrices como si fueran circulares, se


elimina la necesidad de desplazar los elementos al
implementar una cola mediante una matriz.
front 3 N 1
N-1 2
3
rear 7
4

5
count 4

6
7
9 8
front 98 99 1
98 2
97 3
rear 2
4

5
count 4

6
7
9 8
POSICIONES 0 1 2 3 4 5 6 7 8 9

A B C D E F G H

0 8 8

front rear count


POSICIONES 0 1 2 3 4 5 6 7 8 9

E F G H

4 8 4

front rear count


POSICIONES 0 1 2 3 4 5 6 7 8 9

K L E F G H I J

4 2 8

front rear count

Вам также может понравиться