斐波那契数列的生成,两种方法对比
def fib(k):
if k<=1:
return k
else:
return fib(k-1)+fib(k-2)
import time
start=time.time()
s=fib(35)
end=time.time()-start
print s , end
def fib1(k):
i=1;
a=[]
a.append(0)
a.append(1)
if k<=1:
return k
else:
while i<k:
i=i+1
# print a
a.append(a[i-1]+a[i-2])
return a[i]
start=time.time()
s=fib1(35)
end=time.time()-start
print s , end
时间对比
9227465 4.44899988174
9227465 0.0