//减少了数组内元素的交换次数,因此性能比冒泡排序好,用时短
public static void main(String[] args) {
//选择排序方法
//思路:第一次选择一个最小的数,和第一个元素交换
//第二次从第二个元素遍历到最后,选择最小的数和第二个元素进行交换
//。。。
//第n-1此,比较Array[n-2]和Array[n-1]大小,选择小的放在n-1的下标
int[] array = {-2,13,11,-9,8};
for (int i = 0; i < array.length-1; i++) {
int minIndex = i;
int min = array[i];
for (int j = i+1; j < array.length; j++) {
if(min>array[j]){
//标记最小元素坐标
minIndex= j;
min = array[j];
}
}
//交换最小元素和第一个元素
array[minIndex] = array[i];
array[i] = min;
System.out.printf("遍历第%d",i+1);
System.out.println();
for (int m = 0; m < array.length; m++) {
System.out.print(array[m]+" ");
}
System.out.println();
}
}