【问题标题】:What will be the successor of a right child node x when: "the first ancestor of X do fall in the left subtree"当“X 的第一个祖先确实落在左子树中”时,右子节点 x 的后继者将是什么
【发布时间】:2018-04-18 22:33:16
【问题描述】:

我在为一个特定节点寻找后继节点时有点困惑,即节点 x 是右子节点(x 不存在子节点),它的父节点是根节点的左子节点.在这种情况下,节点x 的继任者将是什么。

左子树的节点76 的后继节点是什么? 我也阅读了许多其他教程,但没有成功。大多数教程都在讨论节点上的案例,例如19,它的后继是23,节点23,它的后继是50。或者76的继承者是72/50 对于合适的孩子,我们有这个condition X 是其父 P 的右孩子 那么X的第一个祖先,我们称之为A,这样X落入A的左子树就是X的后继。 谢谢。

【问题讨论】:

    标签: binary-search-tree


    【解决方案1】:

    一个节点的中序后继是二叉树中序遍历中的下一个节点。 Inorder Successor 对于 Inorder 遍历中的最后一个节点为 NULL。 所以 76 的继任者是没有人的,如果你愿意,也可以是 NULL。

    您也可以将其视为具有大于输入节点的键的最小键的节点。因此,再一次没有比 76 更大的节点 - 根据这个定义, 76 的 Successor 是 NUll。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-02-26
      • 1970-01-01
      • 1970-01-01
      • 2014-12-11
      • 1970-01-01
      • 1970-01-01
      • 2018-10-07
      • 1970-01-01
      相关资源
      最近更新 更多