“Conocimientos Programación>Programación Java

¿Cómo hacer recorrido preorden en Binary Tree en Java

2013/9/5
Para hacer un " recorrido " de un árbol binario de Java significa que hacer un procesamiento algorítmico de los nodos en algún tipo de orden. Un " orden previo " transversal significa que el nodo raíz se procesa primero , y luego el resto de los nodos del árbol se procesan de forma recursiva . La función de recorrido simplemente imprimir cada nodo se visita a la consola. Instrucciones
1

Crear una clase de árbol binario de búsqueda simple que tiene un constructor que inicializa básica el valor del nodo . También se incluye debe ser un método de inserción de recorrer un árbol y crear un nuevo nodo en el lugar correcto . " " clase pública BinaryTree { BinaryTree izquierda ; BinaryTree derecho , valor int ; pública BinaryTree (int v ) {value = v ;} //Insertar un valor en el árbol de inserción public void (int v ) { if ( v if ( izquierda = = null) izquierda = new BinaryTree ( v ) , de otra left.insert ( v ) ; } else if ( v > valor) {if (derecha == null) derecha = new BinaryTree ( v ) , de otra right.insert ( v ) ; . } } } " "
2

Construir el nodo raíz del árbol binario, asignándole un valor que está cerca de la media de la de los objetos que va a almacenar esta garantizará la eficiencia , ya que el árbol binario tiene que estar bastante bien equilibrada Si está almacenando una distribución de los números del 1 al 100, por ejemplo , 50 es un buen valor para el nodo raíz " " BinaryTree b = new BinaryTree ( 50 ), " . ".
3

Insertar nodos en el árbol en un orden determinado . el árbol binario no es auto - equilibrado , por lo que la inserción de nodos en un orden específico ayuda a mantener el equilibrio. Aquí los nodos son el lugar para hacer un árbol corto y eficiente equilibrada " " b.insert ( 20 ) ; . b.insert ( 40 ) ; b.insert ( 10 ) ; b.insert ( 5 ) ; b.insert ( 45 ) ; b.insert ( 70 ) ; b.insert ( 60 ) ; b.insert ( 80 ) ; b.insert ( 55 ) ; b.insert ( 85 ), " "
4

hacer un recorrido preorden atravesando el el nodo raíz , luego el árbol de la izquierda y , finalmente, el árbol de la derecha . es fácil de hacer esto de forma recursiva con un pequeño árbol binario , ya que no se desborde la pila. Si su árbol binario es muy grande , la función de recorrido se debe implementar iterativa .
5

Añadir un nuevo método , preventa , a la clase BinaryTree . Aquí el único método imprime el valor de cada nodo que visita. " " preorder public void () { System.out.println (valor ), si (izquierda = null !) left.preorder ( ), si (a la derecha = null !) right.preorder (); } " "
6

Llame al nuevo método después de sus inserciones para imprimir los nodos en preorden " " b.preorder (); " .

Programación Java
Cómo utilizar un montón de inclinación en Java
La anulación de sobrecarga Java
Cómo instalar una aplicación Java Vendor
Cómo voltear píxeles en Java Con getPixel
Cómo hacer un método de ejecución al presionar un botón en Java
Cómo leer los archivos HTML usando Java
Cómo generar números aleatorios sin repetición en Java
Cómo escribir una clase abstracta en Java
Conocimientos Informáticos © http://www.ordenador.online