关于递归过程中给左右节点赋值的问题
来源:5-3 二分搜索树的节点插入
慕标4204065
2019-05-09
老师您好 既然insert函数的返回结果是当前树的根节点 那么node.left/node.right作为参数传进去的返回就是node本身的左右孩子 为什么还要将函数的返回值赋值给node.left/node.right 这点不是很明白 我个人理解在java中是多余的操作 希望老师给予解答
写回答
1回答
-
对于这个返回值的复制,最关键的意义,在于node == null的时候。
此时,我们只返回了new Node(key, value);返回这样一个new出来的节点,是不能把这个节点挂接在树上的。我们是靠把返回值赋值给上一层递归的node.left或者node.right,将这个新节点挂接在树上的。
也可以参考这里:https://coding.imooc.com/learn/questiondetail/32872.html
继续加油!:)
00
相似问题
关于二分搜索树的遍历问题
回答 2
请问递归实现一定能转为非递归实现吗?
回答 1