递归算法
一.简介
二.数乘
假如我们键入5这个数字,那个应该是这样求解的。
推导过程:
5*a 4*b 3*c 2*d 1*e
1*e=1*1
d=1*e
c=2*d
b=3*c
a=4*b
依次类推 3*2=6 4*6=24 5*24=120
所以最后的答案就是120了
三.斐波那契数列
参考: 剑指Offer:斐波那契数列
假设n=6
F(5)*F(4)相当于a*b
F(5)=F(4)*F(3)
F(4)=F(3)*F(2)
F(3)=F(2)*F(1)
四.总结
递归本质上也是二叉树的数据结构,根据两个父节点的计算,推导出各个子节点,从最底层的子节点,再计算出根节点的数值
(1)当到达某个条件的时候,递归返回一个常量数值,拥有边界值
(2)根据最后边界值的参数来定最开始的变量参数,每次递归调用自身并且改变这个变量参数,直至变成边界值
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)