0
以下遞歸代碼的Big-O
時間複雜度(O
)是什麼?以下遞歸代碼的時間複雜度(以大O表示法)?
public static int abc(int n) {
if (n <= 2) {
return n;
}
int sum = 0;
for (int j = 1; j < n; j *= 2) {
sum += j;
}
for (int k = n; k > 1; k /= 2) {
sum += k;
}
return abc(n - 1) + sum;
}
我的回答是O(n log(n))
。這是對的嗎?
你是怎麼得到O(n)的? – recursive 2013-04-22 03:57:02
你好。我犯了一個錯誤。我的答案是O(nlogn) – 2013-04-22 04:00:54
你是怎麼得到O(n log n)的? – recursive 2013-04-22 04:05:05