选择排序是不稳定的算法 举个例子,序列6 8 6 2 9,我们知道第一遍选择第1个元素6会和2交换,那么原序列中2个6的相对前后顺序就被破坏了,所以选择排序不是一个稳定的排序算法。
O(n^2)时间复杂度
public static void selectSort(int[] array) {
//有多少数据 就需要选择 多少-1 次
for (int i = 0; i <array.length-1 ; i++) {
//每次从剩下数据中选出最大的或者最小的 放到没排序的最前面 所以 j从1开始每次加1
for (int j = i+1; j <array.length ; j++) {
if(array[j] < array[i] ){
int tmp = array[j];
array[j] = array[i];
array[i] = tmp;
}
}
}
}