[英]I need help understanding running time and the worst case scenario
我的教授試圖讓我了解運行時間和最壞的情況,但我仍然感到困惑。 他說看一下for循環,看看它迭代了多少次,我猜對於這個代碼,我在它下面有n次迭代。 我只是不太確定。 用於斐波那契數列。
for (int i = 0; i < t; i++) {
j[i] = q;
int A = q;
q = u;
u = A + q;
}
for (int m = 0; m < b; m++) {
if (j[m] <= b) {
System.out.print(j[m]);
}
}
是。 由於循環運行t
次,因此代碼的復雜度為O(t) 。 在循環內部,您正在計算下一個斐波那契數,並將其存儲到數組j[]
。
接下來,您將打印數組的內容,這也是對數組的簡單迭代。
我建議您在循環時始終使用相關且有意義的變量名,例如n
而不是t
和b
。 同樣,您應該像int fibonacci[]
那樣正確命名數組,而不是int j[]
。 這種類型的代碼總是很容易解釋。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.