js-排序

作者: 饭饭七 | 来源:发表于2017-07-10 16:01 被阅读0次

    一、快速排序
    定一个基准,把小于基准的放在左边,大于基准的放在右边。如此循环,直到有序。
    var quickSort = function(arr){
    if (arr.length<=1){
    return arr;
    }
    var pivotIndex = Math.floor(arr.length/2);//找到中心点
    var pivot = arr.splice(pivotIndex,1)[0];//获取基准点
    var left= [];//定义左边数组
    var right= [];//定义右边数组
    for(var i=0;i<arr.length;i++){
    if(arr[i]<pivot){
    left.push(arr[i]);//小于基准点的放在左边
    }else{
    right.push(arr[i]);//大于基准点的放在右边
    }
    }
    return quickSort(left).concat([pivot],quickSort(right));//使用递归重复这个过程
    };

    相关文章

      网友评论

          本文标题:js-排序

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