python中递归函数(以斐波那契数列为案例)

递归函数定义:

在函数内部,可以调用其他函数。如果一个函数在内部调用自身本身,这个函数就是递归函数。

递归函数的优缺点:

递归函数的优点: 定义简单,逻辑清晰,理论上,可以说所有的递归函数都可以写成循环的方式,但循环的逻辑不如递归清晰
递归函数的缺点: 使用递归函数需要注意防止栈溢出

递归函数的条件:

(1) 边界条件:确定递归到何时终止,也称为递归出口。
(2) 递归模式:大问题是如何分解为小问题的,也称为递归体。

斐波那契数列 0,1,1,2,3,5,8,13,21,34,55,89…
从第三个数开始,每个数都是前两个数的和

使用递归算法求指定位数的斐波那契数列的数据

#定义一个函数来计算斐波那契数列
def fibonacci(n):
    # 来判断数列是否在2位以上
    if n<=2:
        # 只有1或2位的话则直接返还
        return n-1
    # 3位以上利用递归函数来计算比n小1位和小2位的数的和   如此循环知道计算出结果
    return fibonacci(n-2)+fibonacci(n-1)
print(fibonacci(40))

猜你喜欢

转载自blog.csdn.net/Layfolk_XK/article/details/107733211
今日推荐