2
我不知道如何根據輸入大小N來確定運行時間,特別是當它進入具有特定限制的循環時。這是我嘗試過的。我猜測常數是正確的。它看起來如何?帶條件的循環的運行時間(步數)
i = 1; //1
k = n; //1
while (i <= k) { //N+1
while (i <= k && A[i] < 0) { //i+2
i = i + 1; //2i
}
while (i <= k && A[k] >= 0) { //i+2
k = k - 1; //2i
}
printf("..."); //1
i = i + 1; //1
k = k - 1; //1
}
啊,我明白了!我的每一行中的步驟是否正確?例如,在第一個inner while循環中,我看到其中一個條件是A [i] <0,我認爲從1開始我不認爲這是真的。 – userrandomnums