zoukankan      html  css  js  c++  java
  • js有序数组中插入一个元素,并有序的输出

    题目:比较传入函数的参数,将参数组成数组,从小到大排序,返回新的数组。

    如:

    insert();console.log(arr); //[]
    
    insert(-1,-2); console.log(arr);//[-2,-1]
    
    insert(3);console.log(arr);//[-2,-1,3]
    
    insert(6,4,5);console.log(arr); //[-2,-1,3,4,5,6]

    代码实现:

    var arr = [];
    var index = 0;
    function insert() {
      for(let k = 0; k < arguments.length; k ++) {
        console.log(arguments.length);
        let num = arguments[k];
        //数组本来是有序的,如果i项的值大于传入的参数,在i项的位置插入,
        for (var i = 0; i < arr.length; i++) {
          if (arr[i] >= num) {
              index = i;
              break;
          }
        }
        //如果插入的位置是数组的最后
        if (i >= arr.length) {
            arr.push(num);
        } else {
            //如果是数组的中间或者第一个位置,则依次将index 开始到数组的最后一个元素向后移动一位,把index的位置空出来,插入新的元素
            for (let j = arr.length; j > i; j--) {
                arr[j] = arr[j - 1];
            }
            arr[index] = num;
        }
        
      }
      return arr;
    }
    insert();
    console.log(arr);
    insert(-1,-2);
    console.log(arr);
    insert(3);
    console.log(arr);
    insert(6,4,5);
    console.log(arr);

    题目:比较传入函数的参数,每次只能传入一个参数,将参数组成数组,从小到大排序,返回新的数组。

    var arr = [];
    var index = 0function insert(num) {
    //数组本来是有序的,如果i项的值大于传入的参数,在i项的位置插入,
      for (var i = 0; i < arr.length; i++) {
          if (arr[i] >= num) {
              index = i;
              break;
          }
      }
      //如果插入的位置是数组的最后
      if (i >= arr.length) {
          arr.push(num);
      } else {
          //如果是数组的中间或者第一个位置,则依次将index 开始到数组的最后一个元素向后移动一位,把index的位置空出来,插入新的元素
          for (let j = arr.length; j > i; j--) {
              arr[j] = arr[j - 1];
          }
          arr[index] = num;
      }
      return arr;
    }
    insert(-1);
    insert(9);

    题目:将数组中的元素从小到大排序

    var arr = [2,6,1,4,7];
    for(i=0;i<arr.length;i++){
      for(j=i+1;j<arr.length;j++){
        if(arr[i]>arr[j]){
          let temp = arr[i];
          arr[i] =arr[j];
          arr[j] = temp;
        }
      }
    }
    console.log(arr)
  • 相关阅读:
    主成分分析法
    K-means算法
    高斯混合模型
    data structure test
    八皇后问题求解
    商品管理系统课程设计
    哈佛商学院20部必看电影
    usaco1.1
    Visual Studio 2012 出现关于ActivityLog.xml错误的解决方案
    2012蓝桥杯决赛题
  • 原文地址:https://www.cnblogs.com/wangwenhui/p/11506056.html
Copyright © 2011-2022 走看看