javascript使用数组的push方法完成快速排序

论坛 期权论坛 脚本     
nimin   2020-12-19 15:21   12   0

排序的方法有很多,本节介绍的是使用数组的push方法完成快速排序

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));//递归
}
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:1012780
帖子:202556
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP