• 【排序算法】插入排序算法Java实现


    1、插入排序基本思想

    类似于我们打扑克,维持一个有序序列,刚开始有序序列是空。

    每次从无序的数组中取出一个数据,插入有序的序列中,使有序序列仍然保持有序。

    2、插入排序的特点

    时间复杂度:O(n2), 稳定,适用于少量数据,如果已经部分排序好,要插入一个数据,则用插入排序再好不过了

    3、Java实现代码

    public int[] insertSort(int[] arr){
    
        for(int i=1; i<arr.length; i++){
    //要插入的数据
    int insertValue = arr[i];
    //被插入的位置
    int index = i-1; while(index >= 0 && insertValue < arr[index]){
         //将arr[index]向后移动 arr[index
    +1] = arr[index];
         //将index向前移动 index
    --; }
         //将插入的数据放入合适的位置 arr[index
    +1] = insertValue; } }
    以上代码单纯理解可能很抽象,建议用实际的数组模拟一遍,看看每一步的变化
    如 arr = [6,2,5,8,7]
    [ 版权声明 ]: 本文所有权归作者本人,文中参考的部分已经做了标记! 商业用途转载请联系作者授权! 非商业用途转载,请标明本文链接及出处!
  • 相关阅读:
    List
    美团Leaf分布式ID生成策略
    单点登陆
    ElasticSearch
    Eureka
    Nginx
    UML
    Computer English
    加密
    Excel中把一列数据转换成逗号隔开的一行
  • 原文地址:https://www.cnblogs.com/gslgb/p/15142889.html
Copyright © 2020-2023  润新知