中数遍历代码问题

来源:7-19 中序遍历下一个结点_代码

凌子祺

2019-09-28

中树遍历不是左中右嘛?为什么next是判断右边是否为空,而不是左边是否为空,不为空就继续next,一直走到最左边呢?

http://img.mukewang.com/szimg/5d8f537309a524fd04800345.jpg

写回答

1回答

ccmouse

2019-10-04

这个next是求给定节点node的下一个节点,first函数是求给定的根为node的这棵树的第一个节点,在first里才尝试不断往左走。
next的时候,node的整个左子树都已经被遍历过了,node本身也被遍历过了。
因此node的下一个就是右子树的第一个节点。如果没有的话,就往父亲节点走。

0
0

Google面试官亲授-Java面试新手尊享课

为面试新手量身定制的Java面试尊享课,解锁“鲤鱼跃龙门”的妙招

2853 学习 · 180 问题

查看课程