[英]What is the time complexity of the function T(n)=2T(n/4)+O(1)?(Without masters theorem)
任何人都可以使用遞歸樹解釋 T(n)=2T(n/4)+O(1) 的時間復雜度嗎? 我在某處看到它說 O(n^1/2)。
只需將方程展開一些迭代,並使用數學歸納法來證明觀察到的模式:
T(n) = 2T(n/4) + 1 = 2(2T(n/4^2) + 1) + 1 = 2^2 T(n/4^2) + 2 + 1
因此:
T(n) = 1 + 2 + 2^2 + ... + 2^k = 2^(k+1) - 1 \in O(2^(k+1))
什么是k
? 來自擴展4^k = n
。 所以, k = 1/2 log(n)
。 因此, T(n) \in O(2^(1/2 log(n) + 1)) = O(sqrt(n))
。 請注意2^log(n) = n
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.