选择排序
选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零。
选择排序实现代码
public class SelectionSort {
private SelectionSort(){
}
public static <E> void sort(E[] arr){
for(int i=0;i<arr.length;i++){
int minIndex=i;
for(int j=i;j<arr.length;j++){
if(arr[j].compareTo(arr[minIndex])<0){
minIndex=j;
}
}
swap(arr,i,minIndex);
}
}
private static <E> void swap(E[] arr,int i,int j){
E t=arr[i];
arr[i]=arr[j];
arr[j]=t;
}
public static void main(String[] args) {
Integer[] data={
1,