思想
冒泡排序的基本思想是,对相邻的元素进行两两比较,(比较大的或小的)进行交换,这样,每一趟会将最小或最大的元素“浮”到顶端,最终达到完全有序。
图解
以大的上浮为例
时间复杂度
O(N²)
代码
`
public static void bubbleSort(int[] arr){
if (arr == null || arr.length<2){
return;
}
for (int e = arr.length-1;e>0;e--){
//e-- 每循环一次,说明顶部的已经是最大(活最小了)
for (int i =0;i<e;i++){
if (arr[i]>arr[i+1]){
//交换
swap(arr,i,i+1);
}
}
}
}
public static void swap(int[] arr,int i,int j){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
`