排序演算法 (1)冒泡法 Java實現

2021-08-16 02:12:51 字數 865 閱讀 8833

寫在前面:

冒泡法的排序思路是比較相鄰的元素,從陣列中arr[0]和arr[1]開始,如果左邊的元素大於右邊元素,那麼交換兩個元素的位置,依次比較相鄰元素,在第一趟排序之後,陣列中最大的元素會被交換到陣列最後的位置。下一輪,再重新從陣列的第乙個元素開始,繼續交換,直到不需要再交換為止。

例如:陣列int arr = new int

(1)第一次排序:2,3,1,5,6,4,7,8

(2)第二次排序:2,1,3,5,6,4,7,8

(3)第三次排序:1,2,3,5,4,6,7,8

(4)第四次排序:1,2,3,4,5,6,7,8

這樣在四次排序之後,就可以完成對arr陣列的排序

**實現:

package test3;

/** * 排序演算法:冒泡法

* * @classname test2

* @description

* @author mcgrady

* @date 2023年3月4日

*/public class test2 ;

sort(arr);

for (int i : arr)

} private static void sort(int arr)

}} }

}

時間複雜度:

最壞情況:就是相當於初始為逆序排列,這種情況下,程式的執行次數(比較次數),(n-1)+(n-2)+.......+1=n*(n-1)/2,所以在最壞情況下,時間複雜度為o(n^2)

最優情況:就是在初始化時就已經為順序,但是因為還要掃瞄一遍陣列,所以時間複雜度為o(n)

空間複雜度:

冒泡演算法的空間複雜度為o(1)

java實現氣泡排序法

一 氣泡排序法 氣泡排序法的比較方式由第乙個元素開始,比較相鄰大小,若大小順序有誤,則對調後再進行下一次元素的比較。如此掃瞄過一次之後就可確保最後乙個元素是位於正確的順序,接著再逐步進行第二次掃瞄,直到完成所有元素的排序關係為止。氣泡排序是穩定排序法。二 分析 1.最壞情況及平均情況需比較n n 1...

氣泡排序法(Java實現)

氣泡排序法原理 對陣列進行排序,氣泡排序法的原理就是將一組無序陣列進行排序,同過把值較小的數逐漸向陣列的頂部 即朝第乙個元素 冒出來,就像水中的氣泡上公升一樣。同時,值較大的資料逐漸向陣列的底部 即朝最後乙個元素 沉下去。這種演算法用巢狀的迴圈對整個陣列進行數次遍歷,每次遍歷都要比較陣列中相鄰的一對...

Java排序演算法1 氣泡排序

一.思想 它重複走訪數列,走訪n 1遍,每次比較相鄰的兩個元素,如果第乙個元素大於 小於 後乙個元素,則交換 取決於你約定是公升序還是降序 這樣就可以把最大 最小 的數沉到最後面。二.例子 比如5,3,2,4.第一趟比較過程為 1.比較5和3,5 3,則交換,交換後的序列為3,5,2,4.2.比較5...