实现思想:
选择排序的基本思想是每一趟在n-i+1(i =1,2,3...,n-1)个记录中选取关键字最小的记录作为有序序列的第i 个记录。
代码实现:
public static void chooseSort(int [] arr){
for(int i = 0 ; i < arr.length ; i++){
for(int j = i+1 ; j < arr.length ; j++){
if(arr[j] < arr[i]){
int temp = arr[j];
arr[j] = arr[i];
arr[i] = temp;
}
}
}
}
测试:
public static void main(String[] args) {
int [] arr = {5,9,1,3,52,13,2,8,4};
chooseSort(arr);
for(int i : arr){
System.out.println(i);
}
}
这里简单说下,对于int型数据进行交换时,可以采用如下方式:
a ^= b;
b ^= a;
a ^= b;
但是这种在a,b两个数据相等的时候,数据会被置成0,所以这种方法需要谨慎使用。