📜  使用递归的斐波那契数列 - Python (1)

📅  最后修改于: 2023-12-03 15:22:27.042000             🧑  作者: Mango

使用递归的斐波那契数列 - Python

斐波那契数列是一个无限序列,以 0 和 1 开始,后面的每一项都是前两项的和。用数学公式表示为:

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

以下是使用递归的 Python 代码实现斐波那契数列:

def fibonacci_recursion(n):
    if n <= 1:
        return n
    else:
        return (fibonacci_recursion(n-1) + fibonacci_recursion(n-2))

# 测试代码
for i in range(10):
    print(fibonacci_recursion(i))

上面的 fibonacci_recursion 函数中,如果传入的参数 n 小于或等于 1,则直接返回 n。否则,递归调用 fibonacci_recursion(n-1)fibonacci_recursion(n-2),然后将它们的返回值相加,作为最终的结果返回。

这段代码运行起来很慢,因为它重复计算了很多次斐波那契数列中的数字。对于大的 n 值,这种递归实现会更加缓慢。因此,当需要计算大的斐波那契数列时,建议使用其他优化的方法,比如动态规划。

总结

本文介绍了如何使用递归实现斐波那契数列的 Python 代码,并讨论了递归实现的一些缺点。如果您需要计算大的斐波那契数列,建议使用更高效的方法,如动态规划。