冒泡排序(BubbleSort)思想 :
依次比较数组中相连的两元素,然后将较大元素放在后面,最后按照从小到大顺序排列出来
规律 :
对n个数进行排序,一共需要n-1轮
第一轮,需要比较n-1次,以后每轮比较的次数会递减
示意图 :
代码实现示例 :
冒泡排序算法(java):
public class TestBubbleSort {
public static void main(String[] args) {
//准备一个数组
int[] arr = {4, 6, 1, 3, 8, 2, 9, 7, 5};
//排序
//一共需要几轮??? arr.length - 1轮
//外层循环,控制轮数
for(int i = 0;i < arr.length - 1;i++) {
// i = 0 1 2
//内存循环,控制比较的次数
for(int j = 0;j < arr.length - 1 - i;j++){
//比较的两个元素:
if (arr[j] > arr[j+1]){ //前100 > 后10
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
//测试一下
System.out.println(Arrays.toString(arr));
}
}