标签:注意 导致 函数实现 匿名 结束 输出 def 阶乘 div
递归函数就是函数在内部调用自身。
必须有一个明确的递归结束条件,称为递归出口。
注意: 切勿忘记递归出口,避免函数无限调用
递归函数实现阶乘:n! = 1 * 2 * 3 * ... * n
def fact(n): if n == 1: return 1 return n * fact(n - 1) print(fact(5)) # 输出结果: 120 print(fact(1)) # 输出结果: 1
递归函数实现斐波那契数列:[1,1,2,3,5,8....]
def fib(n): if n==1 or n==2: return 1 else: return fib(n-1)+fib(n-2) print(fib(5)) #输出结果:5 print(fib(6)) #输出结果:8
总结来说,使用递归函数的优点是逻辑简单清晰, 缺点是过深的调用会导致栈溢出(即比较占用内存空间).(python默认最大为1000次递归)
标签:注意 导致 函数实现 匿名 结束 输出 def 阶乘 div
原文地址:https://www.cnblogs.com/crystal1126/p/13527777.html