[2019][Diciembre][Problema 2]

[2019][Diciembre][Problema 2]

de Camilo Fossemale Zanotta -
Número de respuestas: 2
No me queda clara la definición de la estructura. Cuando define árbol, lo hace como:
struct nodo_arbol {
          unsigned short int dato;
         nodo_arbol * hijo_izq;
         nodo_arbol * hijo_der;
}
arbol [N];

¿Cómo se interpreta la definición de la estructura arbol? Si fuera un arreglo de nodo_arboles, no debería definirse como: nodo_arbol arbol[N]?
Entiendo que puede ser una variante, pero en una estructura como la que supuse anteriormente, no sería más lógico,  en vez de usar punteros como offsets a la base de los nodos, usar el índice del arreglo en el que está el hijo? 
gracias

(Editado por Belen Brandino - envío original jueves, 25 de marzo de 2021, 01:30)

En respuesta a Camilo Fossemale Zanotta

Re: [Examen dic 2019][prob 2]

de Camilo Fossemale Zanotta -
Otra pregunta sobre este mismo, ejercicio, por qué salva el contexto de la variable DX? creo que esto no sería necesario. ¿es correcto? Gracias
En respuesta a Camilo Fossemale Zanotta

Re: [Examen dic 2019][prob 2]

de Federico Rivero -
Estimado,

La estructura intenta ser como vos decís. Los nodos se disponen en un arreglo, pero para referenciarlos se utilizan punteros. La discusión de si es más lógico los índices no viene mucho al caso porque en este ejercicio se quería evaluar la compilación de la estructura que usara punteros en lugar de índices.

En la solución es cierto que no tendría por qué guardarse DX, se podría quitar y estaría bien.

Saludos!
Federico