欢迎访问宙启技术站
智能推送

实现Python函数以递归方式计算斐波那契数列

发布时间:2023-06-24 00:15:53

斐波那契数列是一个非常有趣的数列,其定义如下:

F(0) = 0, F(1) = 1,

F(n) = F(n-1) + F(n-2) (n>=2)

也就是说,斐波那契数列从第三项开始,每项等于前两项的和。其中 F(0) 和 F(1) 分别为数列的 项和第二项。

在这个数列中,前若干项的值为:

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610…

接下来,我们来实现一个 Python 函数,以递归方式计算斐波那契数列。

实现方法

在 Python 中,我们可以使用递归函数来计算斐波那契数列。具体来说,我们可以按照以下步骤实现该函数:

定义一个函数,其参数为一个正整数 n,该参数表示所求斐波那契数列的第 n 项。

如果 n=0 或 n=1,则该函数返回 n。

否则,该函数返回斐波那契数列的第 n 项,即 F(n) = F(n-1) + F(n-2)。

于是,我们可以在 Python 中实现上述算法,代码如下:

def fib(n):

    if n<=1:

        return n

    else:

        return fib(n-1) + fib(n-2)

这个函数可以通过调用 fib(n) 来计算斐波那契数列的第 n 项。下面我们来看一个例子:

print(fib(6)) # 输出 8

在这个例子中,我们传递参数 n=6 给函数 fib,其返回值为 8。这是因为,斐波那契数列的第 6 项的值为 8。

不过,这个算法的效率非常低下,因为当 n 较大时,函数 fib 会被大量重复调用,从而造成重复计算。因此,如果需要计算较大的斐波那契数列,建议使用其他更高效的算法来实现。