• 算法之排序算法-直接插入排序


    package com.ebiz.sort;
    
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    /**
     * @author YHj
     * @create 2019-07-29 8:56
     * 插入排序
     */
    public class Insert {
    
    
        public static void main(String[] args) {
           // int [] arr={101,34,119,1};
    
            int[] arr = new int[80000];
            for (int i = 0; i < 80000; i++) {
                arr[i] = (int) (Math.random() * 800000);
            }
    
            String s = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
            System.out.println("排序前 = " + s);
    
            getResult(arr);
    
    
            String l = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
            System.out.println("排序后 = " + l);
    
    
            //System.out.println(Arrays.toString(arr));
    
        }
    
        public static void getResult(int[] arr) {
    
            for (int i=1;i<arr.length;i++){
                //定义待插入的数
                int insertVal=arr[i];
                //前一位数的索引
                int insertIndex=i-1;
                while (insertIndex>=0 && arr[insertIndex]>insertVal){
                    arr[insertIndex+1]=arr[insertIndex];
                    insertIndex--;
                }
                //循环结束找到待插入的位置.当前索引的前一位   
                arr[insertIndex+1]=insertVal;
            }
    
        }
    
    
    }

    待完善...

  • 相关阅读:
    第二周作业(软件需求分析与系统设计)
    自我介绍
    2019春总结作业
    2019春第十六周作业
    2019春第十五周作业
    2019春第十四周作业
    2019春第十二周作业
    2019春第十一周作业
    2019春第十周作业
    2019春第九周作业
  • 原文地址:https://www.cnblogs.com/jiushixihuandaqingtian/p/11299213.html
Copyright © 2020-2023  润新知