• 数组排序


      虽然是基础,但是也是无意之中写了好几遍然后总是漏洞百出,所以在这里记录一下。

      先说快速排序:

      var sortArr =  [2,4,3,5,64,56,0,100,1];

      function quick(arr){

        if(arr.length <= 1){

          return arr;

        }

        var middleIndex = Math.floor(arr.length/2);

        var middle = arr.splice(middleIndex,1);                      //    找基准值

        var left = [];

        var right = [];

        for(var i = 0; i<arr.length; i++){

          if(arr[i] < middle){

            left.push(arr[i]);

          }else{

            tight.push(arr[i]);

          }

        }

        return quick(left).concat(middle,quick(right));

      }

      quick(oldArr);

      console.log(quick(sortArr));

      坑:   我在最后调用一下quick(oldArr) 然后在输出,就会出现错误 (如上标黄那里)

      第二种说冒泡排序:

      var sortArr =  [2,4,3,5,64,56,0,100,1];

      function bubble(arr){

        for(var i = 0; i<arr.length; i++){

          for(var j = 0; j<arr.length-1; j++){

            if(arr[i]<arr[j]){

              var num = arr[i];

              arr[i] = arr[j];

              arr[j] = num;

            }

          }  

        } 

        console.log(arr);

      }

      bubble(sortArr);

      

     

  • 相关阅读:
    POST GET原理函数
    位宽与带宽
    编程小工具
    C#的四个基本技巧
    关闭弹出模态窗口以后刷新父窗口
    十年技术,不要再迷茫
    冒泡排序
    单元测试工具及资源推荐
    xml xhtml html dhtml的区别
    删除List<string>中重复的值
  • 原文地址:https://www.cnblogs.com/ly-qingqiu/p/10267179.html
Copyright © 2020-2023  润新知