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)
  • 相关阅读:
    spring
    抽象和封装
    Oracle索引的原理
    使用JdbcTemplate.queryForObject 的注意点
    ORM是什么意思
    Java 后台处理数据库的二进制图片流
    Extjs girdPanel显示图片
    斜率dp
    多重背包的二进制优化
    POJ 3249 DAG图最短路
  • 原文地址:https://www.cnblogs.com/wangwenhui/p/11506056.html
Copyright © 2011-2022 走看看