const arr= [];
for(let i=0; i<100000; i++){
arr.push(Math.round(Math.random() * 100000))
}
// 冒泡排序
// const sortArr= (arr)=> {
// arr.forEach(function(item, j){ //
// for(let i= j+1; i< arr.length; i++) {
// arr[j]>arr[i]? [arr[i], arr[j]]= [arr[j], arr[i]]: '';
// }
// })
// return arr;
// }
// const sortArr = arr => {
// arr.forEach((v, i) => {
// for (let j = i + 1; j < arr.length; j++) {
// if (arr[i] > arr[j]) {
// [arr[i],arr[j]] = [arr[j],arr[i]]
// }
// }
// })
// return arr
// }
// 数组的sort方法排序
// const sortArr= (arr) => {
// arr.sort(function(a, b) {
// return a-b;
// })
// return arr;
// }
// 快速排序
const sortArr= (arr) => {
if (arr.length <= 1){
return arr;
}
const left= [], right= [];
const middle= arr[0];
for(let i=1; i< arr.length; i++) {
if (arr[i]<=middle) {
left.push(arr[i])
}else {
right.push(arr[i])
}
}
return sortArr(left).concat([middle], sortArr(right))
}
console.time()
console.log(sortArr(arr));
console.timeEnd();
console