- 非递归
def func(n):
f1=0
f2=1
i=3
while i <= n:
f1,f2=f2,f1+f2
i+=1
return f2
- 递归
def func(n):
if n==1:
return 0
if n==2:
return 1
return func(n-1)+func(n-2)
python最大的递归层数是999,可以通过修改源码修改递归限制:
sys.setrecursionlimit(100000)
def func(n):
f1=0
f2=1
i=3
while i <= n:
f1,f2=f2,f1+f2
i+=1
return f2
def func(n):
if n==1:
return 0
if n==2:
return 1
return func(n-1)+func(n-2)
python最大的递归层数是999,可以通过修改源码修改递归限制:
sys.setrecursionlimit(100000)