簡體   English   中英

計算遞歸關系 T(n)=T(n / [(log n)^2]) + Θ(1)

[英]Calculating the Recurrence Relation T(n)=T(n / [(log n)^2]) + Θ(1)

我試圖解決這個問題很多小時,我認為解決方案是 O(log n/[log (log n)^2])。 但我不確定。這個解決方案正確嗎?

展開方程:

T(n) = (T(n/(log^2(n)*log(n/log^2(n))^2) + Theta(1)) Theta(1) = 
        T(n/(log^4(n) + 4 (loglog(n))^2 - 4log(n)loglog(n)) + 2 * Theta(1)

我們知道n/(log^4(n) + 4 (log(log(n)))^2 - 4log(n)log(log(n)) n/log^4(n)漸近地大於n/log^4(n) 。如你可以看到,每次n除以log^2(n) 。因此,我們可以說如果我們計算n除以log^2(n)直到達到 1 的高度,它將是T(n)

因此,擴展樹的高度將為k使得

n = (log^2(n))^k = lof^2k(n) =>‌ (take a log) 
    log(n) = 2k log(log(n)) => k = log(n)/(2 * log(log(n)))

因此, T(n) = Omega(log(n)/log(log(n)))

對於上限,我們知道n/(i-th statement) <‌ n/log^i(n) (我們應用log(n)而不是應用log^2(n) log(n) ),我們可以說n除以log(n)的高度將是T(n)的上限。 因此,作為:

n = log^k(n) => log(n) = k log(log(n)) => k = log(n) / log(log(n))

我們可以說T(n) = O(log(n) / log(log(n)))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM