递归与树的关系
老师您在这个小节里说到,"对于树这种数据结构使用递归是自然的,更重要的是使用递归是非常方便的"。老师我想请问一下,为什么递归对于树是自然的和方便的呢?每次刷到树的leetcode题时,涉及到用递归解法的时候就晕了,觉得很难以在大脑里模拟和思考,还觉得使用递归解法不好用,就能不用递归就不用递归。都这么难想象和理解了,为啥递归对于树还是自然的呢?方便是咱们的思考逻辑上方便还是计算机操作层面来说是方便的呢?
14
收起
正在回答
1回答
因为树的定义本身就是递归的。即:一棵(树)包含一个根节点,且根节点的左右节点都是(树)。
递归确实是一个门槛,但一旦迈过去,你就会发现他一点儿都不难。这一章介绍的链表,请一定看到 2-5 小节,在看 2-5 之前,如果对我们写的代码模棱两可,没关系,但看完 2-5,一定把 2-5 的内容吃透,然后可以再回头顺一遍这几个小节讲的内容。我相信你会对递有更深刻的认识。
然后阶段二的标题就是:递归无处不在。我们会在归并排序,快速排序和二叉树中,不同地使用递归,练习递归。其中介绍归并排序的 1-5 也很重要:https://class.imooc.com/lesson/1581#mid=36955 和这一章的 2-5 一样,请一定吃透。
有问题随时来问答区提问。如果好好学习这个课程,我相信这个课程能够让你对递归的理解深刻很多。
最后,如果你现在不是特别理解递归,可能你很难相信:递归是对很多问题,我们人类思考起来更方便。很多逻辑,用递归去写很自然,用非递归去写才不自然。
加油!:)
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星