疾速排序递归算法JS完成

                                                                                                                                                                                                                   
  1 function quickSort(arr){
  2     //取基准
  3     var pointIndex=Math.floor(arr.length/2);
  4     //数组去除基准元素,并掏出其值
  5     var pointValue=arr.splice(pointIndex,1)[0];
  6     var left=[],
  7         right=[];
  8     for(var i=0,length=arr.length;i<length;i++){
  9         arr[i]<pointValue?left.push(arr[i]):right.push(arr[i]);
 10     }
 11     return quickSort(left).concat([pointValue],quickSort(right));
 12 }

基准
遍历分出两个数组
递归

    原文作者:_ipo
    原文地址: https://segmentfault.com/a/1190000008016936
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞