Fibonacci序列的计算复杂性我理解大O表示法,但我不知道如何为许多函数计算它。特别是,我一直试图找出Fibonacci序列的简单版本的计算复杂性:int Fibonacci(int n)
{
if (n <= 1)
return n;
else
return Fibonacci(n - 1) + Fibonacci(n - 2);
}斐波纳契序列的计算复杂度是多少?它是如何计算的?
3 回答
红糖糍粑
TA贡献1815条经验 获得超6个赞
Fib(n)
Fib(n-1)
Fib(n-2)
O(1)
Fib(n)
T(n<=1) = O(1)
T(n) = T(n-1) + T(n-2) + O(1)
n
O(2
n
)
n = 1
T(n-1) = O(2
n-1
)
, 因此
T(n) = T(n-1) + T(n-2) + O(1)
等于
T(n) = O(2
n-1
) + O(2
n-2
) + O(1) = O(2
n
)
Fib(n)
f(n) = f(n-1) + f(n-2)
.
Fib(n)
T(n)
Fib(n) x O(1)
θ(1.6
n
)
添加回答
举报
0/150
提交
取消