[英]How to solve the recursive complexity T(n) = T(n/4)+T(3n/4)+cn
[英]How to solve T(n)=T(n/4)+T(3n/4)+nlogn
我有一個問題來解決這個遞歸復雜性T(n)=T(n/4)+T(3n/4)+nlogn
。 你能幫我解決嗎?
您可以使用帶有以下參數的Akra-Bazzi 方法:
a_1 = a_2 = 1,
b_1 = 1/4, b_2 = 3/4
p = 1
T(n) = \Theta(n * (1 + integral( u log(u)/ u^2 du,1, n))) =
\Theta(n * (1 + (log^2(n)/2))) =
\Theta(n log^2(n))
注意 3n/4 > n/4。 因此我們可以看到 T(n) <= 2T(3n/4) + n log n。
現在我們可以應用主定理。 我們可以看到 a=2, b=4/3 和 f(n) = n log n
我們可以看到,log_(4/3) 2 = 2.41
因此 n^log_b a >= f(n)。
因此根據馬斯特定理,我們有 T(n) = O(n^2.41)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.