您当前的位置: 首页 > 

宝哥大数据

暂无认证

  • 0浏览

    0关注

    1029博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

八大排序--直接插入排序

宝哥大数据 发布时间:2017-03-13 19:14:35 ,浏览量:0

八种排序的关系:

这里写图片描述

一、直接插入排序 基本思想:

  在要排序的一组数中,假设前面(n-1)[n>=2] 个数已经是排 好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数 也是排好顺序的。如此反复循环,直到全部排好顺序。 从下面 这里写图片描述

代码实现:

public class InsertSort {
    public static void main(String[] args) {
        int a[]={49,38,65,97,76,13,27,49,78,34,12,64,5,4,62,99,98,54,56,17,18,23,34,15,35,25,53,51};
        for (int i = 0; i < a.length-1; i++) {
            //前面i个数据已经是有序的,需要将第(i+1)个元素插入前面的有序序列
            //相当于取扑克,插入收中已经排好的牌
            int j = i;
            int insertNum = a[j+1];//要插入的元素
            //将大于要插入的这个值的元素,集体向后移动
            while (j >= 0 && a[j] > insertNum) {
                a[j+1] = a[j];
                j--;
            }
            //由于上面一个循环,退出时j再次减一, 
            if ((j+1) != i) {
                a[j+1] = insertNum;
            }
        }
        for (int i = 0; i < a.length; i++) {
            System.out.print(a[i]+" ");

        }
    }
}
关注
打赏
1587549273
查看更多评论
立即登录/注册

微信扫码登录

0.1343s