次の再帰コードの Big-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))
です。それが正しいか?