十大排序算法—选择排序

原理:遍历数组,第一次找出最小的一个,放在第一个位置,第二次找出第二小的一个,放在第二个位置,以此类推。

    public static void sort(int[] a) {
        //有效性判断
        if (a == null || a.length < 2){
            return;
        }
        //最小值标记
        int mark = 0;
        for (int i = 0; i < a.length; i++){
            mark = i;
            for (int j = i + 1; j < a.length; j++){
                if (a[i] > a[j]){
                    mark = j;
                }
            }
            //遍历完一轮之后就交换位置
            swap(a,i,mark);
        }
    }
    public static void swap(int[] a,int n, int m) {
        if (m == n){
            return;
        }
        int temp = a[n];
        a[n] = a[m];
        a[m] = temp;
    }

Guess you like

Origin blog.csdn.net/qq_42251944/article/details/121019917