标签: runtime
为什么以下代码片段的循环运行时间为n-i-1而不是n-1。 n是数组A
n-i-1
n-1
n
A
small = i; for(j = i+1 ; j < n; j++) if(A[j] < A[small]) small = j;
答案 0 :(得分:1)
这是一个数学问题。你可以通过将j初始化为i + 1来开始循环。然后运行直到j = n。当j递增1时,将有n-j - > n-(i + 1) - &gt; n-i-1运行。