常見排序演算法之氣泡排序

2021-07-23 07:53:06 字數 523 閱讀 9312

1)首先,從第乙個元素開始,比較該元素與該元素相鄰的下乙個元素的大小(即第乙個元素與第二個元素的大小),如果該元素比較大則交換位置,否則不交換位置。

2)按照1的步驟不斷重複的比較下一元素與其相鄰元素之間的大小,直到第n-1個元素,第一趟比較結束。例如:接下去是第二個元素,重複 1 的步驟,比較其與其相鄰下一元素大小(即第二個元素與第三個元素的大小),大則交換位置,否則不交換。

3)持續重複以上步驟,直到沒有元素可以比較

時間複雜度:最好的情況下o(n),最壞為倒序情況下:o(n2),平均為o(n2)。

氣泡排序演算法是穩定的。

/*一共要比較arr.length-1趟:for(int i=0;ilength-1;i++)

每趟要比較arr.length-1-i次(i為當前趟數):for(int j=0;jlength-i-1;j++)*/

public void mp(int arr)}}

for(int k=0;klength;k++)

}

常見排序演算法之氣泡排序

氣泡排序 bubble sort 是一種較簡單的排序演算法。它重複地走訪過要排序的元素列,依次比較兩個相鄰的元素,如果他們的順序 如從小到大 首字母從a到z 錯誤就把他們交換過來。比較相鄰的元素。如果第乙個比第二個大 公升序 就交換他們兩個。對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對...

常見演算法之氣泡排序

氣泡排序由於其簡單,通常是我們學習各類程式語言首先選擇學習的乙個排序演算法。1 public class bubblesort 5 建立氣泡排序類的物件 6 bubblesort sorter new bubblesort 7 呼叫排序方法將陣列排序 8sorter.sort array 9 10 ...

常見排序演算法 氣泡排序 快速排序

常見排序演算法 選擇排序 直接選擇排序 堆排序 交換排序 氣泡排序 快速排序 插入排序 直接插入排序 折半插入排序 shell排序 歸併排序 桶式排序 基數排序 輸入 input 有0個或多個輸入資料,這些輸入必須有清楚的描述和定義 輸出 output 至少有1個或多個輸出結果,不可以沒有輸出結果 ...