Java – 算法 – 插入排序

简介

插入排序指的是先从0索引开始向后查找顺序成员,直到成员不顺为止,我们把它作为基准组,其它作为排序组,以基准组为基准,排序组成员依次和基准组成员进行对比,如果大的往前插入,如果小的往后插入。

 

插入排序原理

我们先把一个数组以0索引开始,往后抓,直到抓到无顺序为主即停止,作为有序组。

 

插值排序实现

// 随机定义一个数组
        int[] arr = {5, 7, 9, 65, 53, 2, 654, 4327, 929, 33, 67, 14, 666, 12};

        // 使用插入排序进行数组排序

        // 从0索引开始查找有序例,并成为有序组
        int startIndex = -1;
        for (int i = 0; i < arr.length; i++) {
            // 如果 前面的成员比后面的大,则断开作为有序组
            if (arr[i] > arr[i + 1]) {
                startIndex = i + 1;  // => 3
                break;
            }
        }

        // 开始对无序组和有序组进行一一对比
        for (int i = startIndex + 1; i < arr.length; i++) {
            int j = i;
            // 把这个成员的对有序组的每一个值都比一下,如果有,就调换位置
            while (j>0 && arr[j-1]>arr[j]){
                int temp = arr[j-1];
                arr[j-1] = arr[j];
                arr[j] = temp;
                j--;
            }
        }

 

如果您喜欢本站,点击这儿不花一分钱捐赠本站

这些信息可能会帮助到你: 下载帮助 | 报毒说明 | 进站必看

修改版本安卓软件,加群提示为修改者自留,非本站信息,注意鉴别

THE END
分享
二维码
打赏
海报
Java – 算法 – 插入排序
简介 插入排序指的是先从0索引开始向后查找顺序成员,直到成员不顺为止,我们把它作为基准组,其它作为排序组,以基准组为基准,排序组成员依次和基准组成员进行对比,如果大的往前插入,如果……
<<上一篇
下一篇>>