Java - listas doblemente enlazadas

 
Vista:

listas doblemente enlazadas

Publicado por anyra (10 intervenciones) el 22/03/2008 01:48:53
hola, hace poco estoy manejando el tema de listas(simples como doblemente enlazadas) pero soy un poco novata...es hacer un MP4 q tiene varias carpetas y estas a su vez tienen archivo con los metodos buscar,insertar y mostrar., ya lo tengo casi hecho pero tengo problemas en el main y el metodo mostrar..y qria ver si me podrian ayudar con este programa q es el sig:

class Carpeta{
Carpeta ste,ant;
Archivo ste2;
String nombre,extension;
int tamaño;

Carpeta(){
ste=null;
ant=null;
ste2=null;
nombre=Leer.cadena("Nombre de la carpeta: ");
tamaño=0;
}
}

class Archivo{
Archivo ste3,ant2;
String nombre,extension;
int peso;

Archivo(){
ste3=null;
ant2=null;
nombre=Leer.cadena("Nombre del archivo:");
extension=Leer.cadena("Extension: ");
peso=Leer.entero("Tamaño: ");
}
}

class Lista{
Carpeta NI;

Lista(){
NI=null;
}
//METODOS DE LAS CARPETAS
public void insertar_carpeta(Carpeta c){
Carpeta aux=NI;

if(NI==null) NI=c;

else { while(aux.ste!=null)
aux=aux.ste;
aux.ste=c;
c.ant=aux;
}
}

public Carpeta buscarC(String nc){
Carpeta aux=NI;

if(NI==null){
System.out.println("no hay carpetas");
return null;
}
else{
while(!(nc.equals(aux.nombre)) && aux.ste!=null)
aux=aux.ste;
if (!(nc.equals(aux.nombre))){
System.out.println("no se encuentra la carpeta");
return null;
}
else{
System.out.println("la carpeta si esta");
return aux;
}
}
}
// METODOS DEL ARCHIVO
public void insertarA(String c, Archivo a){
Archivo aux;

if(NI!=null){
Carpeta car=buscarC(c);
if(car!=null){
aux=car.ste2;
if(aux==null)
car.ste2=a;
else {
while(aux.ste3!=null)
aux=aux.ste3;
aux.ste3=a;
a.ant2=aux;
car.tamaño+=a.peso;
}
}
}

else System.out.println("no hay carpetas");
}

public Archivo buscarA(String NA, String NC){

Carpeta car=buscarC(NC);
if(car!=null){
Archivo Aux=car.ste2;
if(Aux!=null){
while(Aux.ste3!=null && !(NA.equals(Aux.nombre)))
Aux=Aux.ste3;
if(!(NA.equals(Aux.nombre)))
System.out.println("EL ARCHIVO NO EXISTE");
else return Aux;
}
}
else return null;
}
}

class Prueba{
public static void main(String args[]){
Lista L=new Lista(); //creacion del objeto
int x;
int op;
BufferedeReader br=new BufferedReader(new InputStreamReader(System.in));

do{
System.out.println("1.Ingresar Carpeta ");
System.out.println("2.Buscar Carpeta ");
System.out.println("3.Mostrar Carpeta ");

System.out.println("4.Ingresar Archivo ");
System.out.println("5.Buscar Archivo");
System.out.println("6.Mostrar Archivo");

System.out.print(" Ingrese la opcion: ");

op=Integer.parseInt(br.readLine());

switch(op)
{
case 1 Y 4:System.out.println(" Ingreso los datos a la lista "){

//COMO LE MANDO AQUI LOS DATOS PARA EL METODOS INSERTAR
SI LO QUE RECIBE EL METODO ES UN NODO(CARPETA)
NO ENTIENDO MY BIEN STA PARTE

}
break;
case 2 Y 5:

//AJA AKI LE MANDO ES UN STRING

break;


case 3 Y 6 :
------------------------------->
//NO SE COMO SERIA EL METODO MOSTRAR Y COMO LO MANDO DESDE AQUI


break;

}


}while(op!=0);

}
}
}

bueno agradeceria su ayuda lo mas pronto posible ......
porfiiii ayudenme
cyaa¡¡¡¡¡
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:listas doblemente enlazadas

Publicado por YURI (1 intervención) el 13/06/2008 06:25:50
ME GUSTARIA SI ME PUDIERAS MANDAR EL ARCHIVO ME URGE UN PROGRAMA...
K PUEDA INSERTARSE Y K AUTOMATICAMENTE SUPIERA EN K POSISCION VA
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar