冒泡算法
1、首先我们将交换方法提取出来
public static void swap(int[] arr,int i,int j){
//交换算法有两种种写法,分别如下
//1普通写法
int temp = arr[i];
arr[j] = arr[i];
arr[j] = temp;
//2通过异或写法,相信大家都知道异或的规则,真^假=真 假^真=真 假^假=假 真^真=假 只要两个条件同时为真或假,其结果都为假
arr[i] ^=arr[j];//等价于 arr[i] = arr[i]^arr[j];
arr[j] ^=arr[i];//等价于 arr[j] = arr[j]^arr[i];
arr[i] ^=arr[j];//等价于 arr[i] = arr[i]^arr[j];
}
2冒泡算法
public static void bubbleSort(int[] arr){
int len = arr.length;
for(int i = 0 ; i <len-1 ; i++){
for(int j = 0 ; j < len-1-i ; j++){
if(arr[j] > arr[j+1]){
//调用上面抽离的交换方法
swap(arr , j , j+1);
}
}
}
}
3、测试方法代码
<