Cola es el tipo para declarar colas. Una cola es una lista abierta ...

if(! Vacia()){x=front; front=front.getPs();} return x;}}. X=new Nodo(n). If vacia() front=x rear=x rear.ps=x rear=rear.p
179KB Größe 14 Downloads 117 Ansichten
Colas Cola es el tipo para declarar colas.

Una cola es una lista abierta. Debido al funcionamiento de las colas,debemos mantener un puntero para el último elemento de la cola(REAR o FINAL),que será el punto donde insertemos nuevos nodos.

Para eliminar un nodo se necesita la referencia al Primero(FRONT o Frente).

Clase Nodo public class Nodo { private int dato; private Nodo ps; public Nodo(int d){ dato=d; this.ps=null; } public int getDato() { return dato; } public void setDato(int d) { dato = dato; } public Nodo getPs() { return ps; } public void setPs(Nodo ps) { this.ps = ps; } }

public class Cola { private Nodo front; private Nodo rear; public Cola(){ front=null; rear=null;} public boolean colaVacia(){ return(front==null);} public void insertar(int dato){ Nodo x = new Nodo(dato); if(vacia()){front=x; rear=x;} else{ rear.setPs(x); rear=x; }} public Nodo quitar(){ Nodo x=null; if(! Vacia()){x=front; front=front.getPs();} return x;}}

Clase Cola Cola() Insertar(n) Front=null X=new Nodo(n) rear=null If vacia() rear.ps=x

rear=rear.ps quitar() X=null

If !vacia() X=front

front=front.ps

“vacia”

return x

front=x rear=x

Clase aplicación con colas public class Aplicacion { Cola colaA; public Aplicacion(){

colaA = new Cola(); }

public void imprimir (){ cola colaAux = new cola(); while(!colaA.Vacia()){ Nodo x = colaA.quitar(); System.out.println(" "+x.getDato()); colaAux.insertar(x.getDato()); } retornar(colaAux,colaA); } public void retornar(cola origen, cola destino){ while(!origen.Vacia()){ x=origen.quitar(); destino.insertar(x.getDato()); } }

Completar la clase aplicación con los métodos generar() , eliminar() y menu de opciones

Hacer la clase Principal