1、快速排序
快排基本思想:
(1)从数列中取出一个数作为基准数
(2)分区过程,将比这个数大的数全放在它的右边,小于或等于它的数全放在左边
(3)再对左右区间重复第二步,直到各区间只有一个数
function quickSort(arr) {
if(arr.length <= 1) return arr;
const middleIndex = Math.floor(arr.length / 2);
const middle = arr.splice(middleIndex,1)[0];
const left = [], right = [];
arr.foreach(item => {
if(item < middle) {
left.push(item);
}else {
right.push(item);
}
}); return quickSort(left).concat(middle,quickSort(right)); }