day31 | 一探动规

刚开始的动规几道题基本都是爬楼梯的变形。

*****************

这题主要问题的到达的是下标为 n 的位置而不是n-1,所以列 dp 的时候空间要给大一下。

然后既然到 fib 数了就复习一下尾递归的知识.

常规递归的过程是:每次函数调用时需要记录当前函数上下文的信息,包括传入参数、局部变量值等,并将这些信息保存在栈空间(也称调用栈或运行时栈)中。

举个例子来说。

- 当一个函数 fib 返回值是 fib(n-1)+fib(n-2)时,函数结束前需要执行相加的操作,所以编译器不会丢弃掉这些信息。

- 而如果返回值是fib(n-1,ret2,ret1+ret2)就不用保存原函数的信息,就可以减少栈空间,防止stackoverflow

全部评论

相关推荐

用微笑面对困难:只要你保证项目和获奖都是真的就行尤其是“对战,总负责人”啊这些套职,基本上队员,打杂的都这么写
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务