演算法 氣泡排序 Java實現

2021-07-30 03:04:51 字數 588 閱讀 9091

原理

1.比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。

2.對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。

3.針對所有的元素重複以上的步驟,除了最後乙個。

4.持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。

實現

1.使用迴圈實現

public

> int binarysearch(t x, t key, comparatorcomparator) else

if(flag > 0) else

}return -1;

}

2.使用遞迴實現

public

> int

binarysearch(t x, int low, int high, t key) else

if(key.compareto(x[mid]) < 0) else

}return -1;

}

排序演算法 氣泡排序 java實現

依次兩兩比較,較小的浮上來,較大的往下沉。平均時間複雜度 o n2 空間複雜度 o 1 用於交換 穩定性 穩定 public static void bubblesort int array 加入一標誌性變數flag,用於標誌某一趟排序過程中是否有資料交換,如果進行某一趟排序時並沒有進行資料交換,則...

Java實現氣泡排序演算法

一 基本思路 氣泡排序是一種簡單的交換類排序。其基本思路是,從頭開始掃瞄待排序的元素,在掃瞄過程中依次對相鄰元素進行比較,將關鍵字值大的元素後移。每經過一趟排序後,關鍵字值最大的元素將移到末尾,此時記下該元素的位置,下一趟排序只需要比較到此位置為止,直到所有元素都已有序排列。一般地,對n個元素進行氣...

Java實現氣泡排序演算法

氣泡排序是一種簡單的交換類排序。其基本思路是,從頭開始掃瞄待排序的元素,在掃瞄過程中依次對相鄰元素進行比較,將關鍵字值大的元素後移。每經過一趟排序後,關鍵字值最大的元素將移到末尾,此時記下該元素的位置,下一趟排序只需要比較到此位置為止,直到所有元素都已有序排列。一般地,對n個元素進行氣泡排序,總共需...