版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
Python 3使用递归完成获取制定斐波那契数列的优化
代码水平菜,请谅解!
#Fibonacci.py
#获取指定斐波那契函数
#Fibonacci.py
#获取指定斐波那契函数
import sys
sys.setrecursionlimit(100000) #设置递归深度设置为十万
num = 1
numlast = 1
def Check(n):
n = n-2
return(Fibonacci(n))
def Fibonacci(n,n1 =num):
global num,numlast
numlast = num
num = num+n1
if n <=1 :
return num
n = n-1
return Fibonacci(n,numlast)
print("第2000个斐波那契数列为"+str(Check(2000)))
有效解决了50以上普通递归方法计算斐波那契数列效率问题,但是设置Python最大递归深度为十万后最多也就2000+,超过就PythonShell Restart,有兴趣的朋友可以接着研究研究