在二叉树的中序遍历中,按以下顺序访问节点:左子树、父节点、右子树。在线索的上下文中,“p=p.rchild”语句很可能指的是右子树的遍历。
以下是二叉树的中序遍历的工作原理:
从树的根节点开始。我们称这个节点为p。
如果p有左孩子,则设置p为左孩子并返回步骤 2。
如果p没有左孩子,则打印 的值p并设置p为 的父代p。
如果p有右孩子,则设置p为右孩子并返回步骤 2。
如果p没有右孩子,则设置p为 的父母p并返回第 4 步。
在步骤 3 中,“p=p.rchild”语句用于设置p为的父级,p以便算法可以在步骤 4 中向上移动树并访问右子树。在步骤 4 中,“p=p.rchild”。 rchild”语句用于设置p为 的右孩子p,这样算法就可以访问 的右子树p。