function quickSort(arr){
  if(arr.length <= 1) return arr;//判断是否有效数组
  var cut = Math.floor(arr.length/2);//取中间下标
  var left = [],right = [];
  var num = arr.splice(cut,1)[0];//取基准值
  for(var i = 0;i < arr.length;i ++){
    if(arr[i] < num){
      left.push(arr[i]);//小的放左边
    }else {
      right.push(arr[i]);//大的放右边
    }
  }
  return quickSort(left).concat(num,quickSort(right));//递归
}

 

posted on 2014-09-14 15:44  lzc_learn_tech  阅读(269)  评论(3编辑  收藏  举报