Fibonacci sequence
naive recursive algorithm
def Fib(n):
if n == 1 or n == 2:
return 1
else:
return Fib(n - 1) + Fib(n - 2)
这是很朴素的思想, 是一种从上到下的方法,但是重复计算了很多之前计算过的结果,时间复杂度是指数级.具体为 Ω ( φ n ) \Omega(\varphi ^n) Ω(φn),其中 φ = 1 + 5 2 \varphi = \frac{1+\sqrt{5}}{2} φ=21+5