Documente Academic
Documente Profesional
Documente Cultură
ES1421001992
Introduccin
Vamos a hablar primero un poco de que son los arboles binarios; nos
dice Wikipedia Un rbol binario es un grafo conexo, acclico y no
dirigido tal que el grado de cada vrtice no es mayor a 3, eso signifca
que tenemos un grafo donde cada nodo puede tener mximo 2 hijos
( o hojas ) y estas hojas no pueden tener como hijos a cualquier otra
hoja anterior como podemos ver en la siguiente imagen:
ES1421001992
Inorden
Postorden
Preorden
2.
3.
4.
5.
6.
ES1421001992
Vamos a programarlo
Todo lo dicho anteriormente, vamos a programarlo ahora usando POO
con java (para que sea ms fcil de entender).
Comenzamos con la abstraccin de la informacin, tenemos que un
rbol binario est compuesto por la raz y sus nodos hijos, de la misma
forma que la misma raz no es ms que otro nodo, partiendo de esto
entonces crearemos 2 clases:
(Quiero comentar antes de esto que, aunque no soy muy
partidario de escribir los nombres de los mtodos y clases en
espaol, por cuestiones de entendimiento para muchas
personas que lleguen a esta informacin, los pondr de esa
forma).
Arbol
Nodo
ES1421001992
ES1421001992
0
3
1
3
2
3
3
3
4
3
5
3
6
3
7
3
8
3
9
4
0
4
1
4
2
4
3
4
4
4
5
4
6
4
7
4
8
valor
hojaIzquierda
hojaDerecha
ES1421001992
/* Constructor */
public Nodo(int valor) {
this.valor = valor;
}
a partir del cual se ingresa el valor del nodo al crear una instancia del
mismo:
ES1421001992
7
1
8
1
9
2
0
2
1
2
2
2
3
2
4
addNodo
removeNodo
recorridoPreorden
recorridoInorden
recorridoPostorden
Programando las funciones del rbol
En esta primera parte quiero abarcar al menos hasta el ingreso de
nuevos nodos, comencemos entonces.
ES1421001992
ES1421001992
}
public void addNodo( Nodo nodo ) {
this.addNodo( nodo , this.raiz );
}