冒泡实现的原理是:从第一个数开始,依次和后面的数作比较,数值小的往上浮。例如:一共五个数,那么第一个数依次和后面四个数作比较。如果第一个数大于后面的数后,交换之后再比较。依次类推。下面是实现的源码 :
/*
* 冒泡排序
*/
public static void main(String[] args) {
int[] arr = {2,1,5,4,3};
int temp = 0;
for(int i=0;i<arr.length;i++){
for(int j=i+1;j<arr.length;j++){
if(arr[i]>arr[j]){
temp = arr[i];
arr[i] = arr[j] ;
arr[j] = temp;
}
}
}
for(int i=0;i<arr.length;i++){
System.out.print(arr[i]+" ");
}
}
冒泡优点: 简单
缺点:效率不高 (如果一个数组有n个数,那么排序完成后需要比较n*(n-1)/2次)