python递归函数:求解斐波那契数列问题

编程学习经验的人对于递归函数一定不陌生,我们经常使用递归的方式来解决一系列复杂的问题,递归算法对于大多数问题都是很有效的,而且它也可以优化我们的代码,我们在使用递归的时候有几点需要注意:

1) 递归是在函数本身调用函数本身。

2) 递归的效率比较低,如果有时间限制不建议使用。

3) 递归过程中需要有一个明确的结束条件,即递归出口。

下面我们就来详细的讲解一下递归函数。

 1. 递归函数

我们先通过例子来看一下递归的简单使用:

12345678= int(input('输入一个数字:'))def test(x):    += 2    if x =100的时候结束递归。

看下面示意图:

python递归函数:求解斐波那契数列问题

即如果不满足条件就回到了最外层来调用了这个函数。

2. 斐波那契数列

谈起递归算法中经典的问题,总是离不开斐波那契数列和汉诺塔,我们在这里来讲解一下如果使用递归去求解斐波那契数列。

首先我们要知道斐波那契数列的递推公式为F(n)=F(n-1)+F(n-2),F(1)、和F(2)为1,我们可以通过递归来求解斐波那契数列中的某一项的值为多少。

求解斐波那契数列问题的时候我们可以采用多种方式。

首先我们使用常用的递归方式来解决这个问题:

1234567= int(input("输入需要得到的项数:"))def fibonacci(n):        if 

相关推荐

站点声明:本站部分内容转载自网络,作品版权归原作者及来源网站所有,任何内容转载、商业用途等均须联系原作者并注明来源。

相关侵权、举报、投诉及建议等,请发邮件至E-mail:service@mryunwei.com

回到顶部