接力关于递归和循环,这里采用尾递归的方法,不需要保存额外的栈帧,既保证了运行效率,又具有可读性。
#尾递归算法实现
import time
n=int(input('请输入一个整数:'))
a=0
b=1
start = time.time()
def F(n,a,b):
if n==0:
return a
return F(n-1,b,a+b)
print(F(n,a,b))
end= time.time()
print("运行时间:%.2f秒"%(end-start))
测试结果为:
请输入一个整数:35
9227465
运行时间:0.00秒