Si observa la naturaleza de estos recorridos, se vuelve bastante obvio.
- En preordenar cada nodo padre se visita antes ( pre ) de sus hijos.
- En orden, cada nodo padre se visita entre sus hijos.
- En el postorder, cada nodo padre se visita después ( post ) de sus hijos.
Aquí hay un pseudocódigo de ejemplo de diferentes recorridos para BST, vea cómo su naturaleza de cruce también coincide con sus respectivas implementaciones. 🙂
preordenar (nodo)
si nodo == nulo, entonces devuelve
visita (nodo) // Antes
preordenar (nodo.izquierda)
preordenar (nodo.derecho)
- ¿Por qué las personas priorizan el método estadístico para el sistema de reconocimiento de entidades de nombre a la coincidencia exacta algorítmica?
- ¿Resolver problemas en Topcoder / Codeforces es una buena manera de aprender Java Collections Framework?
- ¿Cuándo sería el algoritmo A más lento que el algoritmo B? Demuestre su respuesta con la ayuda de un ejemplo.
- ¿Cuáles son las ventajas de los algoritmos de aprendizaje de refuerzo como LinUCB sobre otros algoritmos de predicción de CTR en línea como la regresión logística en línea?
- ¿Cómo se puede incorporar un algoritmo adaptativo en un sistema operativo?
orden (nodo)
si nodo == nulo, entonces devuelve
orden (nodo.izquierda)
visita (nodo) // En el medio
orden (nodo.derecho)
postorder (nodo)
si nodo == nulo, entonces devuelve
postorder (nodo.izquierda)
postorder (nodo.derecho)
visita (nodo) // Después