排序之交换排序,作为大公司面试必备考题:
快速排序是冒泡排序的一种优化,对比一下两者排序。
/**
* 排序之交换排序,主要考察的是冒泡排序以及快速排序
*/
public static void bubbleSort(int[] a, int n){
int i,j;
for(i=0;i<n;i++){ //表示n次排序的过程
for(j=1;j<n-1;j++){
if(a[j-1]>a[j]){//前面的数字大于后面的数字的话就进行交换
int temp;
temp=a[j-1];
a[j-1]=a[j];
a[j]=temp;
}
}
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arr={1,4,5,3,6,8,12};
bubbleSort(arr,arr.length);
for(int i:arr){
System.out.println("输出给定范围对应的每个值"+i);
}
}
}
输出结果如下 1,3,4,5,6,8,12
可以得知此排序方法正确并且有效。
中间过程如下:1与4比较合理,不用走if()循环体,