js 快速排序
1.选择数组第一个基准数。
2.遍历数组其他元素与基准数比较大小,比基准数小的放到左边,大的放到右边。
3.第一轮比较之后得到左边的数组和右边的数组,递归调用函数,再次比较左右两边数组的大小,直到数组的长度为1。
function quickSort(arr) { if (arr.length <= 1) { return arr } var left = [], right = [] var current = arr.splice(0, 1); for(var i = 0; i < arr.length; i++) { if (arr[i] < current) { left.push(arr[i]) } else { right.push(arr[i]) } } return quickSort(left).concat(current, quickSort(right)) } const arr1 = quickSort([3, 4, 1, 1, 2]) console.log(arr1, 'arr1')