Professional Documents
Culture Documents
Caractersticas:
Formado por una serie de nodos conectados por una serie de aristas
que verifican que:
Tiene un nico nodo raz
Cada nodo, excepto la raz, tiene un nico padre
Existe un nico camino (desde la raz hasta cada nodo)
Padres: A, B, F
Hijos: B, E, F, C, D, G, H, I
Hermanos: {B, E, F}, {C, D}, {G, H, I}
Hojas: C, D, E, G, H, I
camino(A,K) = {A,B,F,K}
B C D
camino(C,K) = {.}
E F G H
I J K
Raz
Subrbol Subrbol
izquierdo derecho
Un rbol est perfectamente equilibrado si su equilibrio o balance es cero y sus subrboles son
tambin perfectamente equilibrados, por lo tanto, el factor de equilibrio de cada nodo puede
tomar los valores -1, 0, +1.
Recorrido en preorden: A, B, D, E, C, F, G
Recorrido en orden (inorden): D, B,E, A, F, C, G
Recorrido en postorden: D, E, B, F, G, C, A
Recorrido en anchura: A, B, C, D, E, F, G
if(raiz == null)
raiz = nuevo;
else {
// anterior: referencia al padre de aux
Nodo anterior = null;
// aux: auxiliar que va recorriendo los nodos, desde la raiz
Nodo aux = raiz;
if(raiz == null)
return raiz;
else
{
// aux: auxiliar que va recorriendo los nodos, desde la raiz
Nodo aux = raiz;
while (aux != null)
{
if(dato.esIgual(aux.getValor()))
return aux;
if(dato.esMenor(aux.getValor()))
aux = aux.getIzquierdo();
else
aux = aux.getDerecho();
}
return null;
}
}
if(raiz == null)
return raiz;
else
{
// aux: auxiliar que va recorriendo los nodos, desde la raiz
Nodo aux = raiz;
while (aux != null)
{
if(dato.esIgual(aux.getValor()))
return aux;
if(dato.esMenor(aux.getValor()))
aux = aux.getIzquierdo();
else
aux = aux.getDerecho();
}
return null;
}
}
// 1. Si tiene menos de dos hijos, incluso una hoja, reajustar los enlaces de su antecesor
if(aux.getIzquierdo() == null)
if(aux.getValor().esMenor(antecesor.getValor()))
antecesor.setIzquierdo(aux.getDerecho());
else
antecesor.setDerecho(aux.getDerecho());
aux = null;
return true;
}
// reajuste
if(ant == act)
ant.setIzquierdo(mayor.getIzquierdo());
else
ant.setDerecho(mayor.getIzquierdo());
}
Bibliografa
IS241 Estructura de Datos