Est-il conceptuellement possible d'avoir un arbre où vous le traversez en commençant à un nœud feuille donné (plutôt que le nœud racine) et d'utiliser des pointeurs parent pour atteindre la racine? Je demande cela depuis que j'ai vu quelqu'un implémenter un arbre et ils ont utilisé un tableau pour contenir tous les nœuds feuilles/nœuds externes et chacun des nœuds feuille/externes pointent uniquement vers leurs nœuds parents et ceux parent vers leur parent nœud etc. jusqu'à ce que vous arriviez au nœud racine qui n'a pas de parents. Leur implémentation nécessiterait donc que vous commenciez à l'une des feuilles pour vous rendre n'importe où dans l'arbre et que vous ne puissiez pas descendre l'arbre car ses nœuds d'arbre n'ont pas de pointeurs enfants, seulement des pointeurs parents.Traversée d'arbres - commençant à partir de feuilles avec seulement des pointeurs parents?
J'ai trouvé cette implémentation intéressante puisque je n'ai rien vu de tel mais j'étais curieux de savoir si cela pouvait encore être considéré comme un "arbre". Je n'ai jamais vu un arbre où l'on commence la traversée des feuilles au lieu de la racine. Je n'ai également jamais vu un arbre où les nœuds de l'arbre ont seulement des pointeurs parents et pas de pointeurs enfants.
Vous avez essentiellement répondu à votre propre question. Oui, c'est parfaitement correct de le faire. Windows Presentation Foundation est un bon exemple de * pourquoi * vous voulez faire cela; à savoir la liaison de données relative; c'est-à-dire qu'il faut traverser l'arbre jusqu'à trouver quelque chose, puis s'y lier. Voir: http://stackoverflow.com/questions/84278/how-do-i-use-wpf-bindings-with-relativesource Une question plus intéressante est * pourquoi * vous voulez, et pourquoi vous voulez seulement _parent_ liens. –