函数的递归
函数的递归
是什么?
在一个函数中,当函数内部含有调用自身函数的语句,则表示该函数采用递归方法,例如下所示:
def f1(a,b): f1(c,d) ....... ....... return 0
解法?
思路:①找重复
②找变化:这里可能需要构造变量。
③找边界:是哪个变化的变量,并根据变量变化的规律来得到边界
例如:求n的阶层
①找重复(子问题):则为n*(n-1)的阶层,化为求解(n-1)的阶层。求解(n-1)的阶层比求n的阶层问题规模要小,以此类推,这个为子问题。
②找变化:这里是n在变小。
③找边界:当n=1是结束的标志。
若要使用递归来解决问题,则可以按照此步骤进行解题,这样就更加容易解题。
递归的运用具有一下几种思维
①切蛋糕的思维(就是先切一刀,再将其他看成子问题)
②若切一刀没有用,就看是否有递推的公式。例如斐波那数列,是一般的数学问题,可以分析出数学公式。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~