算法复杂度计算:
计算裴波那切算法的复杂度:
代码举例:
#_*_coding: utf-8 _*_:
def fib(n) :
f1 = f2 = 1
#循环n-1次
for k in range(1, n) :
#f2 = f2 + f1
#f1 = f2
f1, f2 = f2, f2 + f1
print(f2)
return f2
s = fib(3)
print(s)
3
时间复杂度为n。
#_*_coding: utf-8 _*_:
def fib(n) :
if n < 2 :
return 1
else :
return fib(n-1) + fib(n-2)
s = fib(3)
print(s)
3
这一代价大约等于斐波那契数 Fn 的值:
≈ 1.618
时间复杂度为1.618en。