public void swap(int[] array ,int one,int two){
int temp = array[one];
array[one]=array[two];
array[two]=temp;
}
//2、选择排序
/*
* 选择排序改进了冒泡排序,将必要的O(N*N)的交换次数减少到O(N)次,
* 但是比较次数仍保持在O(N*N)次,有些情况是大量的记录需要在内存中
* 移动,此时交换时间相对比较时间起来更为重要(在java中一般不会有这样的
* 情况,因为java只是改变了引用位置,而时间对象的位置并没有发生改变);
*/
public void selectionSort(int[] array){
int min;
//注意外层循环的减1和内层循环的加1,减少一次多余的循环
for (int i = 0; i < array.length-1; i++) {
min = i;
for (int j = i+1; j < array.length; j++) {
if(array[min]>array[j]){
min = j;
}
}
swap(array,i,min);
}
}