【发布时间】:2023-05-10 12:29:01
【问题描述】:
我想了解如何得出以下递归关系的复杂性。
T(n) = T(n-1) + T(n-2) + C
给定T(1) = C 和T(2) = 2C;
一般对于像T(n) = 2T(n/2) + C这样的方程(给定T(1) = C),我使用下面的方法。
T(n) = 2T(n/2) + C
=> T(n) = 4T(n/4) + 3C
=> T(n) = 8T(n/8) + 7C
=> ...
=> T(n) = 2^k T (n/2^k) + (2^k - 1) c
现在当n/2^k = 1 => K = log (n)(到基数2)
T(n) = n T(1) + (n-1)C
= (2n -1) C
= O(n)
但是,对于我遇到的问题,我无法想出类似的方法。如果我的方法不正确,请纠正我。
【问题讨论】:
标签: algorithm complexity-theory time-complexity recurrence asymptotic-complexity