HOLA AMIGOS AQUI DE NUEVO CON ESTE OTRO APORTE QUE SON LAS COLAS DINAMICAS EN JAVA QUE SON PARECIDAS A LA DE PILAS SOLO QUE EN ESTA SE VA ELIMINANDO DE ABAJO HACIA ARRIVA Y COMO ES DINAMICA SE PUEDEN CREAR CIENTOS DE DATOS SIN TOPE EL UNICO TOPE ES LA CAPACIDAD DE MEMORIA DE LA COMPU..... BUENO ES IGUAL SON 3 ARCHIVOS QUE SON LOS SIGUIENTES:
EL ARCHIVO NODOLISTACOLA:
///////////////GENERA NODOS PARA LISTAS DOBLES////////////////////
class NodoListaCola{
////3 campos
Object info;
NodoListaCola Izq;/////////////asi se declara para apuntar a un dato igual a ellos
NodoListaCola Der;
/////////////primer constructor/*/////////////////
public NodoListaCola(Object Dato){
this.info = Dato;
this.Izq = null;
this.Der = null;
}
/////////////////segundo constructor///////////////
public NodoListaCola(NodoListaCola Izq, Object Dato){
this.Izq = Izq;
this.info = Dato;
this.Der = null;
}
}
EL ARCHIVO LISTACOLA:
///////////////////////////LISTA QUE MANIPULA A LOS PUNTEROSY METODOS /////////////
class ListaCola{
//////PUNTEROS
public NodoListaCola Primero,Ultimo,Nuevo,Aux,Pos,Ant;
//////constructor
public ListaCola(){
Primero = Ultimo = Nuevo = Aux = Pos = Ant = null;
}
////////////////////////INSERTAR COLA//////////
public void insertarCola(Object dato){
if(Primero==null){//////////1 caso(lista vacia)
Primero = new NodoListaCola(dato);
Ultimo = Primero;
}
else{
Nuevo = new NodoListaCola(Ultimo, dato);
Ultimo.Der = Nuevo;
Ultimo = Nuevo;
}despliegaListaCola();
}
///////////////ELIMINAR COLA//////////////
public void eliminarCola(){
if(Primero==null){
System.out.println ("lista vacia");
}
else{
///hacer cuatro casos
if(Primero==Ultimo){//// 1 caso
Primero=Ultimo=null;
}
else {//2caso
Primero=Primero.Der;
Primero.Izq=null;
}
}despliegaListaCola();
}
////////////////////DESPLEGAR LISTA DOBLE////////////////
public void despliegaListaCola(){
Aux = Primero;
System.out.println ("######### LISTA COMPLETA ###########");
while (Aux != null) {
System.out.println (Aux.info);
Aux = Aux.Der;
}
System.out.println ("########################################");
}
}
Y POR ULTIMO EL APPLISTACOLA:
import java.util.Scanner;
class AppListaCola{
public static void main(String args[]){
ListaCola lista = new ListaCola();
Integer DatoB,DatoI;
int opcion;
//Inicializacion del teclado
Scanner Teclado = new Scanner(System.in);
do{
System.out.println ("1) INSERTAR COLA");
System.out.println ("2) ELIMINAR COLA");
System.out.println ("3) DESPLEGAR LISTA");
System.out.println ("4) SALIR");
opcion = Teclado.nextInt();
switch (opcion) {
case 1: System.out.println ("Que dato quieres insertar en la Lista: ");
DatoI = new Integer(Teclado.nextInt());
lista.insertarCola(DatoI);
break;
case 2: lista.eliminarCola();
break;
case 3: lista.despliegaListaCola();
break;
case 4: System.out.println ("BYE....");
break;
default :System.out.println ("\topcion no valida intenta de nuevo\n");
}
}while (opcion != 4);
}
}
BUENO AMIGOS AQUI ESTAN LOS ARCHIVOS ESPERO Y LES GUSTEN COMENTEN...
El éxito sólo se logra rompiéndote la madre,de otra manera serías un suertudo no una persona exitosa, Tener éxito en la vida no es llegar a tener fama,sino a realizar aquello que realmente deseas,Una persona no vale por sus éxitos, sino de las veces que se ha levantado de sus fracasos,Lo difícil no es tener éxito, lo difícil es conservarlo, La mejor venganza es el éxito, La fuerza de tu envidia es la rapidez de mi progreso.
Me pregunto y como se hace una consulta teniendo esta estructura y suponiendo que la cola tenga datos
ResponderEliminar