基本排序算法的总结

# 插入排序

    public static int[] insertSort2(int[] arr) {
        if (arr.length < 2 || arr == null) {
            return arr;
        }
        // 假设刚开始数组中只存在一个数,从第二个数开始插入
        for (int i = 1; i < arr.length; i++) {
            // 记录当前插入的数的值
            int current = arr[i];
            // 从当前数的前一位进行比较,一直比较到 arr[0]
            for (int j = i - 1; j >= 0; j--) {
                // 如果插入数小于比较数,比较数向后移动一位(index+1),插入数占据比较数的位置
                if (arr[j] > arr[j + 1]) {
                    arr[j + 1] = arr[j];
                    arr[j] = current;
                }
            }
        }
        return arr;
    }

猜你喜欢

转载自www.cnblogs.com/lwmp/p/9812146.html