冒泡排序
基础不牢,地动山摇。每天搞一两道算法也挺好,会的默写,不理解的死记,勤复习,多练习
冒泡排序介绍
冒泡排序就是将一组数据,按照从小到大的方式进行排序。
比较相邻一对数的大小,从第一对比到最后一对。如果前边的一个数比后边的一个数大,就交换位置;如果前边一个数小于后边一个数,按原来顺序不变,最后一个数肯定是最大的,所以:
第一次是对n个数进行n-1次比较,最后的一个数是最大。
第二次是对n-1个数进行n-2次比较,倒数第二个数最大。
…
每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
代码如下:
注意是两层for循环
public class BubbleSort{
public static void main(String[] args){
//定义需要排序的数组
int arr[] = new int[]{75,21,36,85,97,0};
//leng-1此冒泡
for(int i=0;i < arr.length-1;i++){
for(int j = 0;j < arr.length-1-i;j++){
if(arr[j] > arr[j+1]){
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
System.out.println("从小到大排序后的结果是:");
for(int i = 0;i < arr.length;i++){
System.out.print(arr[i] + " ");
}
}
}