排序的方法有很多,本节介绍的是使用数组的push方法完成快速排序
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
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)); //递归 } |