zoukankan      html  css  js  c++  java
  • 插入排序

    /*
      insert: 实现插入排序
        @params
          ary [array] 需要排序的数组
        @return
          [array] 排序后的新数组
    */
      function insert(ary) {
        // 1、准备一个新数组,先保存一个数据
        let temp = [];
        temp.push(ary[0]);
        // 2、从第二项开始依次比较
        for (let i = 1; i < ary.length; i++) {
          // A 是新的数据
          let A = ary[i];
          // 和 Temp 里的数据依次比较(从后向前比)
          for (let j = temp.length - 1; j >= 0; j--) {
            // 每一次要比较的手里的牌
            let B = temp[j];
            // 如果当前新数据 A 比要比较的数据 B 大了,把 A 放到 B 的后面
            if (A > B) {
              temp.splice(j + 1, 0, A);
              break;
            }
            // 已经比到第一项
            if (j === 0) {
              temp.unshift(A);
            }
          }
        }
        return  temp;
      }
    let ary = [12, 8, 24, 16, 1]
    ary = insert(ary);
    console.log(ary)
  • 相关阅读:
    vue-nuxtjs
    mongodb4.0支持事务
    promisify,promisifyAll,promise.all实现原理
    nodejs, 阿里oss上传下载图片
    数据库备份与还原
    SQL 数据类型、约束、索引及视图
    数据库的查询
    数据库(增、删、改、查)
    数据库基础知识
    C#语言小结
  • 原文地址:https://www.cnblogs.com/HYTing/p/12626388.html
Copyright © 2011-2022 走看看