[英]How to solve this recursion T(n) = 5T(n/2) + n^2 lg n using master's theorem?
[英]Solving the recurrence T(n) = T(n / 2) - T(n / 6) + O(lg n) using the master theorem method?
. 使用主定理方法求解递归 T(n) = T(n / 2) - T(n / 6) + O(lg n)?
代入法建议我们猜测解,然后通过归纳证明。
这里我们猜测部分解:T(2^k) = k+1
这给了我们 T(n) = lg(n) + 1 对于 na 2 的幂。为了将其扩展到完整的解决方案,让 n' 是大于或等于 n 的 2 的最小幂(对于任意 n>0 )。 然后 T(n) <= T(n') = lg(n') + 1。由于 n' < 2n,我们有 lg(n') < lg(2n) = lg(n) + 1。所以 T( n) < lg(n) + 2。
因此我们证明了 T(n) = O(lg(n))。
它是O(log₂(n))
:
__
T(n) = T(n/2) + 1 |
T(n/2) = T(n/4) + 1 |
T(n/4) = T(n/8) + 1 |-- k operations
... |
T(1) = 1 __|
n/2^k = 1 => n = 2^k => k = log₂(n) (by definition of log₂).
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.