Arbol General
Enviado por oscar101019 • 10 de Diciembre de 2015 • Trabajo • 882 Palabras (4 Páginas) • 185 Visitas
public class NodoGeneral {
Object valor;
NodoListaDoble ini,fin,temp;
public NodoGeneral(Object val){
valor=val;
ini=fin=null;
}
public boolean esHoja(){
return ini==null && fin==null;
}
public boolean esRama(){
return !esHoja();
}
public boolean enlazar(Object valor){
temp = new NodoListaDoble (new NodoGeneral(valor));
if(temp==null){
return false;
}
if(ini==null && fin==null){
ini=temp;
fin=temp;
return true;
}
fin.sig=temp;
temp.ant=fin;
fin=temp;
return true;
}
public boolean desenlazar(Object o){
if(ini==null && fin== null){
return false;
}
if(ini==fin){
if(ini.hijoDir.equals(o)){
ini = fin = null;
return true;
}
return false;
}
if(ini.hijoDir.equals(o)){
temp = ini;
ini = temp.sig;
temp.sig = null;
ini.ant = null;
temp = null;
return true;
}
if(fin.hijoDir.equals(o)){
temp = fin;
fin = temp.ant;
fin.sig = null;
temp.ant = null;
temp = null;
return true;
}
for(temp = ini.sig; temp!=fin;temp = temp.sig){
if(temp.hijoDir.equals(o)){
temp.ant.sig = temp.sig;
temp.sig.ant = temp.ant;
temp.ant = temp.sig = null;
temp = null;
return true;
}
}
return false;
}
...