zoukankan      html  css  js  c++  java
  • js快速排序

    //基数,随便选一个数组里面的数.一般情况下取素组中间的数字(这个基数决定了快速排序算法的优劣)

    var arr = [43,2,8,3,5,12,85,9,23];

    //快速排序的函数

    function quickSort(Array1){

    if(Array1.length <= 1){

    return Array1;

    }

    //取出一个基数

    //基数的下标

    var privosIndex = Math.floor(Array1.length / 2);

    //这个基数需要从数组里面剔除出来,再获取到

    var privos = Array1.splice(privosIndex,1)[0];

    var left = [];

    var right = [];

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

    if(Array1[i] < privos){

    left.push(Array1[i]);

    }else{

    right.push(Array1[i]);

    }

    }

    return quickSort(left).concat(privos,quickSort(right));

     

    }

    var s = quickSort(arr);

    console.log(s)

  • 相关阅读:
    进程和线程
    关于offer对比
    CVTE面经
    重定向
    奇虎360面试经验
    百纳信息(海豚浏览器)面经
    携程网面经
    百度面经
    位运算
    Cracking the Coding Interview 4.8
  • 原文地址:https://www.cnblogs.com/lxlin/p/6019471.html
Copyright © 2011-2022 走看看