对于参数a和b,均为ω(1),T(n)=T(n 1/a )+1,T(b)=1。那么 T(n) 是
(A) Θ(log a log b n)
(B) Θ(log ab n)
(C) Θ(log b log a n)
(D) Θ(log 2 log 2 n)答案:(一)
解释:给定,
T(n) = T(n1/a)+1,
T(b) = 1
现在,使用迭代方法,
= T(n)
= [T(n1/a2)+1] + 1
= [T(n1/a3)+1] + 2
= [T(n1/a4)+1] + 3
.
.
.
= [T(n1/ak)+1] + (k-1)
= T(n1/ak) + k
让,
→ n1/ak = b
→ log(n1/ak) = log(b)
→ ak = log(n) / log (b) = logb(n)
→ k = logalogb(n)
所以,
= T(n1/ak) + k
= T(b) + logalogb(n)
= 1 + logalogb(n)
= Θ(logalogb(n))
选项(A)是正确的。
这个问题的测验