斐波那契数列递归实现

斐波那契数列的说明
斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……,即第三个数及以后的数等于前两个数的和。

斐波那契数列的递归斐波那契表达式
F(0)=0,F(1)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 3,n ∈ N*)

用python实现斐波那契数列的递归
代码:
def fib(x):

if x == 1:
    return 0

if x == 2:
    return 1

if x>2:
    return fib(x-1)+fib(x-2)

print(fib(x))

测试:

测试的结果是fib(100)就已经要不止十分钟了,更不用说fib(1000),fib(10000),通过询问得知是因为在递归模式下,每一次的结果都需要从头运算,当导致fib(100)时的计算量就非常大了。于是用了一下循环来实现,就快多了,一分钟绰绰有余。

原文地址:https://www.cnblogs.com/wxl2761407387/p/13942658.html