python 递归方式实现斐波那契数列

import time 

t1=time.time()
def factorial(n):

    if n==1 or n==2:
        return 1
    else:
        return factorial(n-1)+factorial(n-2)

f=factorial(30)
print(f)

delt1=time.time()-t1
print(delt1)

t2=time.time()
a=[1,1]

for i in range(2,30):
    d=a[i-1]+a[i-2]
    a.append(d)

print(i)
print(a[-1])

delt2=time.time()-t2
print(delt2)

print('the efficient is ',int(delt1/delt2))
832040
0.5144872665405273
29
832040
0.0003504753112792969
the efficient is  1467

可以看出递归的效率非常低,递归除了装13,并不实用…….

转载于:https://www.cnblogs.com/luoganttcc/p/10525388.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值