冒泡排序java
它是指這樣一種排序:將一個待排序序列從頭至尾依次兩兩相比較,若是後者比前者小,那麼交換二者的位置。(一趟完成以後,最大的數字就在最後了)通過n-1趟比較事後,則排序完成。code
比較過程以下:排序
先將R[0]與R[1]比較,若是R[0]>R[1],那麼將二者交換,而後比較R[1]與R[2],依次類推,直到比較到R[n-2]與R[n-1]。這樣比較完一趟以後,最大的數字就已經排在序列最後了(這樣就排好最大的數字)。而後再重複上面的步驟,將第2大,第3大的數字,……都排好,那麼整個序列就排列好了。class
這個排序一共會比較n-1趟。sort
public static int[] bubbleSort(int[] sort) { int temp; int i, j; // 一共會比較n-1次 for (i = 0; i < sort.length - 1; i++) { // 每次將最大的數沉底 for (j = 1; j < sort.length - i; j++) { // 若是後一個數比前一個數小,那麼交換兩個數的位置 if (sort[j] < sort[j - 1]) { temp = sort[j]; sort[j] = sort[j - 1]; sort[j - 1] = temp; } } } return sort; }