![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构和算法
王骑士
这个作者很懒,什么都没留下…
展开
-
剑指offer复习递归
该开始接触递归一脸懵逼,那时在做二叉树的三种递归遍历,感觉很难,有时刷题即使做出了任然不是很明白。 把剑指刷完以后,就开始分类总结,首先从递归开始,因为递归和动态规划有很大的相似之处。 递归,我们一提到递归首先会解释什么是递归: 简单的说是代码上可以看到递归会自己调用自己,有递归结束条件,而自己调用自己在范围上会缩小。 在思想上分为从上递归和从下递归,有时在从上往下递归时会有大量重复,比如我们经常举的例子-斐波那契数列 如下图所示: ![在这里插入图片描述](https://img-b原创 2020-08-11 04:34:50 · 107 阅读 · 0 评论 -
复习剑指offer斐波那契数列
复习剑指offer斐波那契数列 最初想到了递归和迭代在牛客网上都通过,但是发现有时在牛客网上通过的代码在力扣并不能通过,原因是最初用的递归没有任何优化,导致时间超时,复习再学习借鉴了别人的动态规划,目前对动态规划并不熟悉,只知道和递归类似将大问题分解成小问题,不过解决问题的过程中会保留结果,消除了递归中出现的重复计算: 递归中重复计算说明: 动态规划代码: unordered_map<int,int>dmp; int fib(int n) { if(n<2) return n原创 2020-08-10 00:10:23 · 121 阅读 · 0 评论