概念
冒泡排序(Bubble Sorting)的基本思想:通过对排序序列从前向后(从下标较小的元素开始),依次的比较相邻元素的值,若发现逆序就进行交换,这样使得较大的元素逐渐从前向后移动,就像水底的气泡一样逐渐往上冒。
看下面的图就知道了:
代码实现
import java.util.Arrays;
/**
* 冒泡排序
*/
public class BubbleSort {
public static void main(String[] args) {
int arr[] = {3, 9, -1, 10, 20,2};
System.out.println("排序前:");
System.out.println(Arrays.toString(arr));
bubbleSort(arr);
System.out.println("排序后:");
System.out.println(Arrays.toString(arr));
}
public static void bubbleSort(int[] arr){
int temp = 0;
boolean flag = false;
for(int i=0;i<arr.length-1;i++){
for(int j=0;j<arr.length-i-1;j++){
if(arr[j+1]<arr[j]){
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
flag=true;
}
}
if(!flag){
break;
}
}
}
}