【发布时间】:2015-09-08 08:07:13
【问题描述】:
我目前正在尝试解决与主定理的关系:
T(n) = 2T(n/4) + log n
我已经知道 a = 2 和 b = 4,但我对 log n 感到困惑。
我的脚本说:c(n)(这里是 log n)是 Big O(n^d) 的元素。
如果我能在这里算出我的 d,我会比较 a 和 b^d 以找出我的主定理案例。
但是,由于它在这里是 log n,我不确定它的大 O 表示法。
我的意思是我可能会说它是 O(n1/2) 的元素,这将导致情况二,其中 a 和 b^d 相同,但它也是 O(n1/2) 的元素O(n1),然后又是另一种情况。
【问题讨论】:
-
这里是否需要使用主定理,或者您可以通过其他方式解决这个问题吗?
-
我其实是需要使用它的,是的。
-
在情况 2(至少在 Wikipedia 中的编号中),您需要
log n=Θ(n^{1/2}log^k (n))。在第 3 种情况下,您需要log n=Ω(n^{1/2})。两者都不是真的。
标签: algorithm math big-o recurrence master-theorem