选择排序
原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。 以此类推,直到全部待排序的数据元素的个数为零。
选择排序是不稳定的排序方法。
时间复杂度:O(n^2)
空间复杂度:O(1)
public static void selectSort(int[] arr){
for (int indexofmax = arr.length-1; indexofmax >= 0; indexofmax--) {
int indexmax = 0;
int max = arr[0];
for (int i = 0; i <= indexofmax; i++) {
if(arr[i]>max){
indexmax = i;
max = arr[i];
}
}
int temp = arr[indexofmax];
arr[indexofmax] = arr[indexmax];
arr[indexmax] = temp;
}
}