Busqueda Arboles
Chano9814Apuntes26 de Noviembre de 2017
1.725 Palabras (7 Páginas)116 Visitas
public boolean Retira(NodoABB
boolean b=true;
NodoABB
String Llave=Infor.toString();
while (R != null) {
if ( Llave.compareTo( R.Info.toString() ) < 0 )
{
Ant=R;
R=R.DameSubIzq();
b=false;
}
else
if ( Llave.compareTo( R.Info.toString() ) > 0 )
{
Ant=R;
R=R.DameSubDer();
b=true;
}
else
break;
}
if (R==null)
return false;
if (R.DameSubIzq() != null && R.DameSubDer() != null) {
//
NodoABB
NodoABB
boolean RamaIzq=false;
while (Temp.DameSubIzq() != null)
{
Aux=Temp;
Temp=Temp.DameSubIzq();
RamaIzq=true;
}
//
Dr = R.Info;
R.Info = Temp.Info;
//
if (RamaIzq)
{
if (Temp.DameSubIzq() == null)
Aux.setSubIzq(Temp.DameSubDer());
else
Aux.setSubIzq(Temp.DameSubIzq());
}
else
{
Aux.setSubDer(Temp.DameSubDer());
}
return true;
}
else
{
if (R==Root)
{
Dr=R.Info;
if (R.DameSubIzq()==null)
Root=R.DameSubDer();
else
Root=R.DameSubIzq();
}
else
{
Dr=R.Info;
if (R.DameSubIzq() == null)
if (b)
...