在算法中找出递归关系的时间复杂度

时间:2010-09-24 22:31:17

标签: algorithm complexity-theory

任何人都可以帮我找到时间复杂度

如果n <= 0,则

T(n)= 1 T(N)= T(N-1)+ T(N-2)+ N

2 个答案:

答案 0 :(得分:2)

考虑

F(n) = T(n) + n + 3.

这给了我们

F(n) - (n+3) = F(n-1) - (n-1+3)  + F(n-2) - (n-2+3) + n

i.e

F(n) - 3 = F(n-1) - 2 + F(n-2) - 1

i.e

F(n) = F(n-1) + F(n-2)

这是斐波那契的序列!

众所周知,对于像斐波那契一样的序列,F(n) = Theta(phi^n)其中phi是黄金比例。

答案 1 :(得分:0)

根据OEIS,此函数的闭合公式为,这意味着此函数的渐近复杂度为alt text