码迷,mamicode.com
首页 > 编程语言 > 详细

Java基础--插入排序

时间:2019-07-14 10:49:23      阅读:87      评论:0      收藏:0      [点我收藏+]

标签:结果   pre   代码   大小   span   system   temp   顺序   记录   

直接插入排序算法

(从后往前找到合适位置插入)

基本思想:每步将一个待排序的记录,按其顺序码大小插入到前面已经排序的子序列的合适位置(从后向前找到合适位置后),直到全部插入排序完为止。

例:

34,4,56,17,90,65 

第一轮:i=1;temp=4

34,34,56,17,90,65

4,34,56,17,90,65

第二轮:i=2;temp=56

4,34,56,17,90,65

第三轮:i=3;temp=17

4,34,  56,56,90,65

4,34,34,56,90,65

4,17,34,56,90,65

第四轮:i=4;temp=90

4,17,34,56,90,65

第五轮:i=5;temp=65

4,17,34,56,90,90

4,17,34,56,65,90

代码如下:

public static void main(String[] args) {
        int[] num= {34,4,56,17,90,65};
        //控制比较的轮数
        for(int i =1;i<num.length;i++) {
            int temp = num[i];//记录操作数
            int j =0;
            for(j=i-1;j>=0;j--) {
                if(num[j]>=temp) {
                    num[j+1]=num[j];
                }else {
                    break;
                }
                if(num[j+1]!=temp) {
                    num[j+1]=temp;
                }
            }
        }
        //输出结果
        for(int x :num) {
            System.out.println(x);
        }
        
    }

 

Java基础--插入排序

标签:结果   pre   代码   大小   span   system   temp   顺序   记录   

原文地址:https://www.cnblogs.com/s1023/p/11183309.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!