美文网首页
js快速排序

js快速排序

作者: TsingXu | 来源:发表于2016-11-01 19:57 被阅读0次

    首先了解什么是快速排序。

    1、找到一个基准值(一般是中间位)
    2、然后将数组的值与基准值比较,分为两个数组(比基准值小的,比基准值大的)
    3、然后对这两个数组再排序,循环。

    
    var arr = [1,3,4,8,2,0,9,11,5];
    console.log(quickSort(arr));
    
    function quickSort(arr){
    
        if(arr.length <= 1) return arr;
        var index = Math.floor(arr.length/2);
        var key = arr.splice(index,1)[0];
        var left = [], right = [];
        for(var i=0;i<arr.length;i++){
    
            arr[i]<key?left.push(arr[i]):right.push(arr[i]);
        }
        return quickSort(left).concat([key],quickSort(right));
    }
    
    

    相关文章

      网友评论

          本文标题:js快速排序

          本文链接:https://www.haomeiwen.com/subject/indmuttx.html