大家好,
根据下面给出的螺纹二叉树的定义
二进制树通过使所有正确的子指针(通常为空指向节点的inorder后继者)进行线程化,并且通常为null的所有左子指针指向该节点的inorder前导 .
但是在上面的图中右子指针指向inorder和前面的子指针指向inorder,这让我感到困惑 .
看看C,它的前身是什么?接班人?订单是
B then C then D
所以B是C的前身,D是C的继任者 .
C的左指针指向哪里? B,这是前任,对我来说似乎很好 .
同样,正如预期的那样,C的右指针指向D.
似乎声明,图表和逻辑都同意 . 哪里出了问题?
引用和图形都是正确的,也许你对后继者和前任的定义是否落后?
不,他们指向正确的节点 .
在一些书中,当作者提到“ left 孩子”时,他们指的是在父节点的 right 中出现的孩子(可能是因为它从节点自己的角度来看是左边的) . 反过来也是这样 - 他们将 right 称为 left
小心不要混淆!
在上图中,定义是正确的:左子被称为左子 .
右节点的情况类似
定义和图形彼此一致 . 但是,以下声明是错误的:
但是在上面的图中,右子指针指向inorder和左子指针指向inorder继承人
5 回答
看看C,它的前身是什么?接班人?订单是
所以B是C的前身,D是C的继任者 .
C的左指针指向哪里? B,这是前任,对我来说似乎很好 .
同样,正如预期的那样,C的右指针指向D.
似乎声明,图表和逻辑都同意 . 哪里出了问题?
引用和图形都是正确的,也许你对后继者和前任的定义是否落后?
不,他们指向正确的节点 .
在一些书中,当作者提到“ left 孩子”时,他们指的是在父节点的 right 中出现的孩子(可能是因为它从节点自己的角度来看是左边的) . 反过来也是这样 - 他们将 right 称为 left
小心不要混淆!
在上图中,定义是正确的:左子被称为左子 .
右节点的情况类似
定义和图形彼此一致 . 但是,以下声明是错误的: