-2
我很難找出如何計算一些代碼的時間複雜度。我知道大O的基本知識,儘管我不能完全理解如何計算。找不到這個C代碼的時間複雜度?
這是一個我無法解決的例子。希望你能:
void f(int n) {
int j, s;
for (j = 0, s = 1; s < n; j++, s*=2)
printf(「!」);
double values[j];
for (int k = 0; k < j; k++)
values[k] = 0;
while (j--)
for (int k = 1; k < j; k++)
values[k] += 1.0/k;
}
什麼是運行時間?我很喜歡解釋:)
什麼是運行時或大O複雜度? – juanchopanza
@juanchopanza哦,不知道這是兩回事。像O(logn)或O(n^2)這樣的計算,如果它對你來說意味着什麼。對困惑感到抱歉。 –
一個好的開始可能是格式化代碼,使其更具可讀性。在C中,空白並不重要(字符串和字符文字之外),所以縮進對於編譯器*來說並不重要。儘管如此,它對人類非常重要。 –