[英]How to solve the following recurrence using the substitution method?
我需要使用Substitution方法證明對以下重現的嚴格限制:
T(n) = 2T(n/2) + n/log(n)
我已經到達Substitution方法的“guess”部分並且通過使用遞歸樹和迭代方法知道T(n)
是O(n*log(log(n)))
。 但我無法弄清楚如何從大O和歐米茄的歸納步驟出發:
Assume T(n/2) <= c*(n/2)log(log(n/2))
T(n) = 2T(n/2) + n/log(n) <= 2c*(n/2)log(log(n/2)) + n/log(n)
Assume T(n/2) => c*(n/2)log(log(n/2))
T(n) = 2T(n/2) + n/log(n) => 2c*(n/2)log(log(n/2)) + n/log(n)
假設
T(n/2) <= (n/2) log log (n/2) = (n/2) log (log n - 1).
然后
T(n) = 2T(n/2) + n/log n
<= n log (log n - 1) + n/log n
= n log log n - n (log log n - log (log n - 1) + 1/log n),
所以足以證明log log n - log (log n - 1) >= 1/log n
,這是一般不等式log k - log (k - 1) >= 1/k
一個實例,通過積分證明1/x
從x = k - 1
到x = k
並應用均值定理。 (視覺上,寬度為1
,高度為1/k
的矩形適合在x = k - 1
到x = k
的1/x
曲線下。)
下限相似; 對於k >= 2
使用不等式log k - log (k - 1) <= 1/(k - 1) <= 2/k
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.