如何根据BST中的后继获取节点的父节点?

时间:2013-01-31 21:09:18

标签: algorithm binary-search-tree

在BST中,如果每个节点都没有指向其父节点的指针,则指向其后继节点(也有左右子节点指针)。我们如何设计一个基于后继指针获取其父级的算法?

1 个答案:

答案 0 :(得分:1)

对于节点n,我们可以重复获取后继s,直到我们得到s.left == n。然后s是父母。如果没有找到这样的节点,n是一个正确的孩子,我们反复获得后继s,从第一个元素开始(通过重复调用e = e.left很容易获得)直到我们得到{ {1}},然后s.right == n是父级。