let arr1 = [8,3,9,14,32,2,1,5]
// 归并排序
function mergeSort(arr){
if(arr.length<2)return arr
let mid = Math.floor(arr.length/2)
let left = arr.slice(0,mid)
let right = arr.slice(mid)
return merge(mergeSort(left),mergeSort(right))
}
function merge(left,right){
let result = []
while(left.length && right.length){
if(left[0]<right[0]){
result.push(left.shift())
}else{
result.push(right.shift())
}
}
return result.concat(left,right)
}
// 快速排序
function quickSort(arr){
if(arr.length<2)return arr
let mid = Math.floor(arr.length/2)
let pivot = arr.splice(mid,1)[0]
let left = [],right = []
for(let v of arr){
v<pivot ? left.push(v) : right.push(v)
}
return quickSort(left).concat(pivot,quickSort(right))
}