Hola. Estoy respondiendo esto basado en mi comprensión de tu pregunta.
TREE es una colección de nodos (contiene datos) y ramas (enlaces) sin ningún enlace circular (básicamente sin enlaces).
TREE se puede decir como representación n-array. Simplemente hablando, ‘n’ es el número máximo de nodos para un nodo particular. Esta representación se da solo para un árbol estándar. (Donde puedes codificar sin ninguna ambigüedad)
- ¿Algún algoritmo de aprendizaje profundo quedará obsoleto algún día con los algoritmos tradicionales? ¿O los algoritmos de aprendizaje profundo solo son adecuados para problemas específicos?
- ¿Alguien podrá escribir un algoritmo que pueda hacer dinero en el mercado durante un período de 20 años?
- Cómo escribir un buen algoritmo
- 1,000 participantes toman un examen que consta de 100 preguntas y 5 opciones por pregunta. ¿Cuál es el mejor enfoque (algoritmo) para encontrar todos los pares posibles de participantes con al menos un 80% de coincidencia en las opciones que eligieron?
- ¿HackerRank es un buen entrenamiento para el IOI?
Ej: árbol binario. En este árbol, cada nodo contiene como máximo 2 nodos.
Entonces, volviendo a tu pregunta. Permítanme explicar primero cómo codificar representa para un árbol binario. Más adelante, puede proceder para árboles de orden superior.
Usando LISTAS VINCULADAS:
Las ESTRUCTURAS Y LAS LISTAS DOBLES ENLACADAS pueden ayudarnos a representar el árbol mediante la codificación.
Puede crear dos partes VINCULADAS y una parte DATOS para cada nodo en una LISTA VINCULADA. La ilustración se muestra a continuación.
El enlace izquierdo de A apunta el nodo izquierdo a A, es decir, B. Y el enlace derecho de A apunta el nodo derecho a A, es decir, C. De manera similar, los nodos restantes.
La parte del código para LISTAS VINCULADAS dobles se puede entender fácilmente desde Construir un árbol binario completo desde su Representación de lista vinculada: GeeksforGeeks.
Si eres bueno en los conceptos, también puedes codificar sin consultar el enlace anterior.
Usando ARRAYS:
Considere el siguiente ejemplo:
Se puede usar una sola matriz para representar un árbol binario.
Para estos nodos se numeran / indexan de acuerdo con un esquema que da 0 a la raíz. Luego, todos los nodos se numeran de izquierda a derecha nivel por nivel de arriba a abajo. Los nodos vacíos también están numerados. Luego, cada nodo que tiene un índice i se coloca en la matriz como su i-ésimo elemento.
En la figura que se muestra a continuación, los nodos del árbol binario están numerados de acuerdo con el esquema dado.
Espero que lo hayas entendido. Gracias.