刚刚做了一个测验: T(n) = 4T(sqrt(n)) +5
我用代换简化了它,得到了F(k) = 4F(k/2) +5
使用主定理,我猜它是O(logn)。这是准确的吗?
发布于 2013-03-14 18:37:39
定义
F(n) = T(2^n)
然后我们就有了那个
F(n) = 4F(n/2) + 5
根据主定理,我们得到了
a = 4
b = 2
f(n) = 5 = O(1) = O(m^0), so c = 0
0 < 2 = log_2(4)
所以我们在主定理的情况1中。在第一种情况下,我们有
F(n) = Theta(n^2)
所以
T(2^n) = Theta(n^2)
因此
T(n) = Theta(log(n^2)) = Theta(2logn) = Theta(log n)
所以,是的,你的答案似乎是正确的。
https://stackoverflow.com/questions/15416779
复制相似问题