演算法篇 氣泡排序

2021-10-24 02:24:36 字數 942 閱讀 4456

氣泡排序是低效的排序演算法,通過不斷交換相鄰逆序對來實現排序。這個相鄰逆序對是很重要的。這個演算法的名字由來是因為越大的元素會經由交換慢慢「浮」到數列的頂端,故名。

氣泡排序一般是學到的第乙個排序演算法,常規寫法實現比較簡單。

氣泡排序的平均時間複雜度為o(n

2)o(n^2)

o(n2

),最壞情況下時間複雜度為o(n

2)o(n^2)

o(n2

),最好情況下時間複雜度為o(n

)o(n)

o(n)

(辨別有序)

}改進氣泡排序最好情況下時間複雜度為o(n

)\ o(n)

o(n)

, 最壞情況下時間複雜度為o(n

2)\ o(n^2)

o(n2

)

void

bubblesort

(int a,

int length)

} right = rightbound;

//修改範圍

for(

int i = right; i > left; i--)}

left = leftbound;

//修改範圍

}}

排序演算法篇(氣泡排序)

氣泡排序 bubble sort 是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢 浮 到數列的頂端。氣泡排序演算法的...

演算法基礎之排序篇 氣泡排序

1 演算法描述依次比較相鄰的數劇,將小的數排前面,大的排後面。操作步驟 1 從第乙個元素開始,依次與後乙個數比較,小數放前,大數放後,結果是最大的放到了最後。2 對前n i個數重複 1 i從1至n 2,n為原序列大小。2 圖例 3 public void sort int data 4 穩定性及複雜...

演算法基礎之排序篇 氣泡排序

1 演算法描述依次比較相鄰的數劇,將小的數排前面,大的排後面。操作步驟 1 從第乙個元素開始,依次與後乙個數比較,小數放前,大數放後,結果是最大的放到了最後。2 對前n i個數重複 1 i從1至n 2,n為原序列大小。2 圖例 3 public void sort int data 4 穩定性及複雜...