問題詳情

6.下列遞迴式的時間複雜度為何?T(n) =1                   if n<=2 T(n) = 2T(n/2)+1    if n>2
 
(A) O(log n)
(B)O(log log n)
(C)O(n)
(D) O(nlog n) 。 

參考答案

答案:C
難度:適中0.536082
統計:A(17),B(7),C(52),D(21),E(0)

用户評論

【用戶】Skytree Wang

【年級】小一下

【評論內容】不好意思,請教一下,有人可以寫出解題過程嗎?拜託…

【用戶】騏騏

【年級】國三上

【評論內容】當 n <= 2 時,T(n) = 1 為常數時間,時間複雜度為 O(1)當 n 2 時例如 n = 4T(4) = 2 * T(4/2) +1         = 2 * T(2) + 1        = 2 + 1        = 3再例如 n = 10T(10) = 2 * T(10/2) + 1= 2 * T(5) + 1= 2 * ( 2 * T(5/2) + 1) +1= 2 * ( 2 * T(2) + 1) +1= 2 * ( 2 * 1 + 1) +1= 2 * (2 + 1) + 1= 2 * 3 + 1= 6 + 1= 7處理時間為線性時間,時間複雜度 O(n)若有錯還請高手不吝指正...【補充】常見時間複雜度:常數時間 O(1) 如:判斷奇偶數對數時間 O(logn)如:二分搜尋線性時間 O(n) 如:循序搜尋線性對數時間O(nlogn)如:快速排序、合併排序(用linked list)二次時間 O(n^2)如:氣泡排序、插入排序、選擇排...

【用戶】ntustslhs

【年級】小二上

【評論內容】不好意思 看不太懂3F為何最後會導出O(n)可以請知道解法的大大解答嗎(自己不管怎麼算都是O(nlogn) TAT