思想
简单选择排序是最简单直观的一种算法,基本思想为每一趟从待排序的数据元素中选择最小(或最大)的一个元素作为首元素,直到所有元素排完为止,简单选择排序是不稳定排序。
图解
时间复杂度
O(N²)
代码
`
public void selectionSort(int[] arr){
if (arr ==null || arr.length<2){
return;
}
for (int i=0;i<arr.length;i++){
int minIndex = i;
for (int j=i+1;j<arr.length;j++){
minIndex =arr[j]<arr[minIndex]?j:minIndex;
}
swap(arr,i,minIndex);
}
}
public void swap(int[] arr,int i,int j){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
`