选择排序
选择排序的主要思想是:每趟排序中选取关键字值最小的记录及就是一趟排序中从n个记录中选取关键字最小的,再从n-1个数值中拿到一个次小的 如此循环 直到n=0为止。
直接选择排序
直接选择排序(Straight Selection Sort)从n个记录中选取关键字最小的和第一个记录交换,然后依次类推直到n=0
算法性能分析:
(1) 空间复杂度 直接选择排序只用了一个辅助单元
(2) 时间复杂度 O(n*n)
(3) 算法的稳定性 不稳定的排序算法
具体代码如下:
public static Object[] selectSort(Object[] arr){
for(int i=0;i<arr.length;i++){
int min=i;
for(int j=i+1;j<arr.length;j++){
if((Integer)arr[min]>(Integer)arr[j]){
min=j;
}
}
if(min!=i){
Object obj=arr[i];
arr[i]=arr[min];
arr[min]=obj;
}
}
return arr;
}