Si está codificando en C + + o C # , es posible que en ocasiones necesita para construir un árbol binario de forma recursiva. Esto genera los nodos hoja de abajo hacia arriba , algo que la mayoría de las otras plataformas de codificación no permiten . Si usted necesita para construir el árbol de forma recursiva de la entrada del usuario de algún tipo , puede hacer lo mismo , pero se requiere una sección extra de código. Sólo tiene que integrar el código de la entrada del usuario a los comandos binarios directamente, por lo que se solicita al usuario por su contribución al ejecutar la función. Instrucciones
1
Abra el C + + o C # .
2
Copia el siguiente código en el que desea que el árbol que se genere . Este es el componente principal de un árbol binario básico recursiva :
clase
Tree {private : Nodo * inicio ; Nodo * newNode ; Nodo * actual; Nodo * anterior ; Nodo tecla * ; Nodo * keyPrevious ; TreeSize int , valor int ; public: void createTree (int TreeSize ) { if ( TreeSize == 1 ) {current = inicio ; anterior = actual; } else { createTree ( TreeSize - 1 ) , mientras que ( current-> getLeft () = ! NULL ) { anterior = actual , actual = actual -> getLeft () ;} current-> SetLeft ( nuevo nodo ( + + value) ) ; anterior = actual , actual = actual -> getLeft (); cout < < " actual :" << current-> getValue () << " " << " anterior : " << anterior -> getValue () < < endl ;} } Tree (int size) { TreeSize = tamaño , valor = 0 ; start = NULL; anterior = actual; newNode = new nodo (valor) , start = newNode ; cout << " start: " ; << Inicio -> getValue () << endl ; createTree ( TreeSize ) ;} } ;
int main () { } XXXXXXXXXXXXXXX
3 < p > Reemplazar la sección identificada como " XXXXXXXXXXXXXXX " con su código de entrada del usuario. Entrada árbol binario sería generalmente pedir una variable numérica como el número de nodos "hoja" para comenzar y /o terminar con . Este código se llama a la función antes de que se genere el árbol.
4
Guardar el código.