选择排序原理:默认从第一个数组元素开始,每轮从数组中选取最小的元素,记录其下标索引,与开始元素交换位置;然后依次遍历。
复杂度:O(n) O(n^2) 稳定性:不稳定
@Test
public void selectSort(){
int[] a = {2,34,12,10,9,22,0};
for (int i=0;i<a.length;i++) {
int minIndex = i; // 每轮开始元素索引
for(int j=i+1;j<a.length;j++){
if(a[j]<a[minIndex]){
minIndex = j; // 记录每轮最小元素索引
}
}
int temp = a[i]; // 与每轮开始元素交换位置
a[i] = a[minIndex];
a[minIndex] = temp;
}
System.out.println(Arrays.toString(a));
}