什么是递归?优缺点是啥?

您所在的位置:网站首页 二次数据分析的优缺点是什么 什么是递归?优缺点是啥?

什么是递归?优缺点是啥?

2024-07-11 19:53| 来源: 网络整理| 查看: 265

文章目录 什么是递归?区别循环与递归从斐波那契数列数列来看递归总结参考文献

什么是递归?

简单讲就是函数调用自己。

递归就是有去(递去)有回(归来)。

下图来自于 什么是递归?先了解什么是递归. 在这里插入图片描述 怎么更好地终极理解递归算法的总结: “递归”这个词,其实递归可以是“有去有回”,也可以是“有去无回”。但其根本是“由大往小地去,由近及远地去”。“递”是必需,“归”并非必需,依赖于要解决的问题,有的需要去的路上解决,有的需要回来的路上解决。有递无归的递归其实就是我们很容易理解的一种分治思想。

区别循环与递归

简单来说,循环是有去无回,而递归则是有去有回(因为存在终止条件)。

举个栗子,你用你手中的钥匙打开一扇门,结果去发现前方还有一扇门,紧接着你又用钥匙打开了这扇门,然后你又看到一扇们…但是当你开到某扇门时,发现前方是一堵墙无路可走了,你选择原路返回——这就是递归

但是如果你打开一扇门后,同样发现前方也有一扇们,紧接着你又打开下一扇门…但是却一直没有碰到尽头——这就是循环。

从斐波那契数列数列来看递归

斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义: F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>=3,n∈N*)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用。

简单的递归代码如下:

def fibonacci(n): """ :param n: 斐波那契数列的长度 """ if n


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3