Colas

Solo disponible en BuenasTareas
  • Páginas : 2 (465 palabras )
  • Descarga(s) : 0
  • Publicado : 8 de noviembre de 2011
Leer documento completo
Vista previa del texto
COLAS 
Una cola es una estructura de datos caracterizada por ser una secuencia de elementos en la que la operación de inserción push se realiza por un extremo y la operación de extracción pop por elotro. También se le llama estructura FIFO (del inglés First In First Out), debido a que el primer elemento en entrar será también el primero en salir. El tipo cola representa la idea que tenemos decola en la vida real. La cola para subir al autobús está compuesta de elementos (personas), que dispone de dos extremos comienzo y fin. Por el comienzo se extraerá un elemento cuando haya comprado elbillete para su viaje, y si llega una nueva persona con intención de usar el autobús, tendrá que colocarse al final y esperar que todos los elementos situados antes que él abandonen la cola. 

Ladefinición de la COLA seria: 

[img][img]http://img507.imageshack.us/img507/4331/nodo4xc6.th.jpg[/img][/img] 

Crear una COLA 
IF P=NIL 
BEGIN 
P:=CREAR_NODO(); 
P.INFO:=DATO; 
P.DIR:=NIL; END; 
ELSE 
BEGIN 
Q:=P; 
WHILE Q.DIR <> NIL DO 
Q:=Q.DIR; 

S:= CREARNODO() 
S.INFO:=DATO; 
Q.DIR:=S; 
Q:=S:=NIL; 
END; 

IMPLEMENTACION 
1.- FORMA ESTATICA: Se representa como unvector(arreglo) y dos números el numero de frente me da la posición del primero en salir y el numero final me da la posición de la ultima en encontrar. (FIFO). 

CONST MAXIMO; 
TYPETIPOCOLA:=RECORD; 
DATOS:ARRAY[1.. MAXIMO]OF …; 
FRENTE, FINAL =1.. MAXIMO; 
END 
VAR 
COLA, TIPOCOLA; 

PROCEDURE INICOLA( VAR COLA: TIPOCOLA); 
BEGIN 
COLA.FRENTE=1 
COLA.FINAL=1 
END 

Para verificarque una cola este vacía Habrá que ver si el frente es igual al final. 

COLA VACIA 

PROCEDURE COLA_VACIA( VAR COLA: TIPOCOLA);BOOLEAN 
BEGIN 
COLA.VACIA:=COLA.FRENTE:=COLA_FINAL; 
END 

COLALLENA 
FUNCTION COLA_LLENA(COLA:TIPOCOLA):BOOLEAN; 
VAR 
SIG:1.. MAXIMO 
BEGIN 
IF COLA.FINAL=MAXIMO THEN 
COLA.LLENA:=TRUE 
ELSE 
SIG:=COLA.FINAL+1 
ENDIF 
2.- FORMA DINAMICA: 

TYPE...
tracking img