请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

波波老师,删除最小节点 代码有点没懂

正在回答

1回答

liuyubobobo 2019-05-07 14:15:12

看一看,这个问答是不是就是你的问题?https://coding.imooc.com/learn/questiondetail/96268.html


这里的关键是,这个函数处理的是以node为根节点的二分搜索树(不是root),删除他的最小值,返回新的二分搜索树的根。如果node这个根节点的左子树为空,那么node就是要删除的节点。删除以后,就剩下node的右子树了。(因为左子树为空)


删除的结果,将传回给上一层递归调用,而不是root。其实,这个过程,和我们之前在第五章讲的链表的递归删除,是完全一样的。只不过链表不分左右而已:)


可以创建一个小型的二分搜索树,然后删除其中的最小值,跟踪一下整个删除过程,再仔细体会一下。建议一定对比链表的递归删除,把其中的逻辑想明白:)


加油!:)

0 回复 有任何疑惑可以回复我~
  • 提问者 慕运维8677934 #1
    非常感谢老师,意思是删除了最小节点之后  他的右子树作为这个二叉树的跟返回
    回复 有任何疑惑可以回复我~ 2019-05-07 14:25:43
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信