3
我認爲下面代碼的時間複雜度是O(log N),但答案是O(N)
。我不知道爲什麼:時間複雜度:O(logN)或O(N)?
int count = 0;
for (int i = N; i > 0; i /= 2) {
for (int j = 0; j < i; j++) {
count += 1;
}
}
對於內部件for循環,它運行很多次: N + N/2 + N/4 ...
這似乎是logN
我。請幫我理解爲什麼在這裏。謝謝
你碰巧知道諧波總和增長的順序是什麼? –