C++ TreeNode 父指针?

C++ TreeNode parent Pointer?

Java TreeNode class 包含对子项和父项的引用。我有时在 C++ 实现中看到,只有左、右子指针而没有父指针。

在 C++ 实现中,是否应该有父指针?

这真的是你想用你的树做什么的问题。在许多情况下(想想表达式树)你只需要真正了解你的 children。如果是这种情况,那么指向 parent 的指针就无关紧要了。所以看看你需要做什么。如果您的 child 节点需要了解有关 parent 的信息,那么 parent 指针将是必需的,但在大多数情况下它确实不是。

如果你能提供更多关于你在做什么的细节,我可能会给出一个更好的答案,关于你的问题是否会通过 parent 指针得到改善。