将数组分为两个部分,前半部分已排序,后半部分未排序。每轮从未排序部分找出最小值放入已排序部分。
优化:每轮比较只记录索引,最后再交换,减少交换次数。
private static void selectionSort(int[] arr) {
for (int i = 0; i arr[j]){
min=j;//记录最小值索引
}
}
//最小值索引不等于 初始索引时
if (min!=i){
// 交换
swap(arr,min,i);
}
System.out.println(Arrays.toString(arr));
}
}



