zoukankan      html  css  js  c++  java
  • 数组排序

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

      先说快速排序:

      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);

      

     

  • 相关阅读:
    js 中的 EventLoop
    线程的并发工具类
    xpath获取某个节点下的全部字节点的文本
    2020中国 .NET开发者大会精彩回顾:葡萄城高性能表格技术解读
    .NET 控件集 ComponentOne V2020.0 Update3 发布,正式支持 .NET 5
    log4net配置
    TP5.1 爬虫
    pip下载慢
    TP5.1 二维码生成
    composer插件集合
  • 原文地址:https://www.cnblogs.com/ly-qingqiu/p/10267179.html
Copyright © 2011-2022 走看看