定义:递归,就是在运行的过程中调用自己。
构成递归需要的条件:
- 子问题须与原始问题为同样的事,且更为简单;
- 不能无限制地调用本身,须有个出口,化简为非递归状况处理。
Note: Python的最大递归层数是可以设置的,默认的在window上的最大递归层数是998,
可以通过sys.setrecursionlimit()进行设置,但是一般默认不会超过3925-3929这个范围。
Fibonacci数列python实现:
#!/usr/bin/env python # -*- encoding: utf-8 -*- ''' @File :Fibonacci.py @Description :Fibonacci: 1、1、2、3、5、8、13、21 @CreatTime :2020/08/24 11:20:03 @Author :Yunhgu @Version :1.0 ''' def Fibonacci(num): if num == 1 or num == 2:#第一、二个数都是1 return 1 else: return Fibonacci(num-1)+Fibonacci(num-2) if __name__ == "__main__": for i in range(1,11): print(f'Fibonacci第{i}个:{Fibonacci(i)}')