排序-选择排序
基本思想:在待排序子表中找出最大(小)元素, 并将该元素放在子表的最前(后)面。
平均时间:O(n2)
最好情况:O(n2)
最坏情况:O(n2)
辅助空间:O(1)
稳定性:不稳定
适用场景:n比较小时
java实现:
public static void selectSort(int[] list) { for (int i = 0; i < list.length; i++) {
int min = list[i];
int minIndex = i;
for (int j = i + 1; j < list.length; j++) {
if (list[j] < min) {
min = list[j];
minIndex = j;
}
}
if (i != minIndex) {
list[minIndex] = list[i];
list[i] = min;
}
}
}