的計算複雜度[1,2,3,4,5,6,7,8,9,10]假設我們有一個算法,執行以下操作:給定一個數組嵌套算法
for i in 0..a.length
for j in 0..a.length
...
這將具有O(n^2)的大O運行時間,因爲對於每個元素它將遍歷整個數組。
但是如果內循環只從外部索引向前運行會怎樣?
for i in 0..a.length
for j in i..a.length
...
也就是說,比較起來,第一個算法每次迭代都會看n個元素(外部循環)。第二ALGO着眼於:在第二次迭代上的第一迭代
- n個元素
- n-1個元素
- 在第三次迭代
- n-2個元素...
- 1元素在最後一次迭代
在計算這種算法的Big O運行時,它仍然是O(n^2)嗎?
+1包括顯式和。 –