Js插入排序

作者: 饥人谷_黄洪涛 | 来源:发表于2018-05-16 22:44 被阅读7次

    插入排序

    插入排序原理

    • 用未参与排序的数与已经排好序的数从后往前做比较
    • 比较中找到自己的位置然后插入到该位置


      image

    插入排序步骤

    • 确定外层循环 index为已排好序的个数
    • 内层循环从已排好序的最后位置开始往前比较
    • 整个已排序部分搜索一遍保存最后的索引
    • 插入 splice函数

    代码实现

    var a = [10,38,45,50,48,13,27,20];
    var index = 0;
    for(var i = 1; i < a.length; i ++){
      index = i;
        for(var j = i - 1; j >= 0; j--){
            if(a[i] < a[j] ){
                index = j;
            }
        }
        a.splice(index,0,a[i]);  //插入a[i]
        a.splice(i+1,1);  // 由于数组变了,所以原先a[i]的值到a[i+1]去了,删掉它
    }
    console.log(a);
    

    相关文章

      网友评论

        本文标题:Js插入排序

        本文链接:https://www.haomeiwen.com/subject/sztvdftx.html