0
這是一個優化的氣泡排序算法的僞代碼。我試圖分析它的時間複雜性,但我不確定第4行(如果A [i-1]> A [i])的成本是多少。答案是(n-1)+(n-2)+ ........ + 1?第5至8行的成本又是多少?如何分析給定優化氣泡排序的複雜性?
1.for j = A.length to 2
2. swapped = false
3. for i = 2 to j
4. if A[i-1] > A[i]
5. temp = A[i]
6. A[i-1] = A[i]
7. A[i-1] = temp
8. swapped = true
9. if(!swapped)
10. break