选择排序

选择排序

最简单的排序之一
核心思想:每次找出最小的数,执行n-1轮

public class SelectSort {

    public static void main(String[] args) {
        int[] arr=new int[] {4,7,2,9,1,6,5,56,76,44,22,55};
        selectSort(arr);
        System.err.println(Arrays.toString(arr));
    }
    public static void selectSort(int[] arr) {

        for(int i=0;i<arr.length-1;i++) {
            //最小的数的索引
            int minIndex=i;
            for(int j=i+1;j<arr.length;j++) {
                if(arr[minIndex]>arr[j]) {
                    minIndex=j;
                }
            }
            //第i个不是最小的,则替换
            if(minIndex!=i) {
                int temp=arr[i];
                arr[i]=arr[minIndex];
                arr[minIndex]=temp;
            }
        }
    }
}