寻找渐近上限和下限?
Finding asymptotic upper and lower bound?
如果我们假设 T(n) 对于较小的 n 是常数,我们如何找到这个函数的解?
T(n) = T(n−2) + 2logn
到目前为止,我无法找到表示整个函数的方法。你能帮我么?我真的很想明白。
假设n是偶数,并且T(1) = T(0) = 0
.
T(n)/2 = log(n) + log(n-2) + ... + log(2)
= log((n/2)! * 2^n)
= n log(2) + log((n/2)!)
= n log(2) + n log(n) - n + O(log(n)) (Stirling's approximation)
因此 n
甚至 T(n) = Theta(n log(n))
。
对于n
奇数,可以记T(n-1) < T(n) < T(n+1)
,得到相同的渐近界。
如果我们假设 T(n) 对于较小的 n 是常数,我们如何找到这个函数的解?
T(n) = T(n−2) + 2logn
到目前为止,我无法找到表示整个函数的方法。你能帮我么?我真的很想明白。
假设n是偶数,并且T(1) = T(0) = 0
.
T(n)/2 = log(n) + log(n-2) + ... + log(2)
= log((n/2)! * 2^n)
= n log(2) + log((n/2)!)
= n log(2) + n log(n) - n + O(log(n)) (Stirling's approximation)
因此 n
甚至 T(n) = Theta(n log(n))
。
对于n
奇数,可以记T(n-1) < T(n) < T(n+1)
,得到相同的渐近界。