// 归并排序:
function mergeSort(arr){
if(arr.length < 2 ) return arr;
let mid = Math.floor(arr.length/2);
let merge = function(leftArr,rightArr){
console.log(leftArr,rightArr);
let resultArr = [];
while(leftArr.length && rightArr.length){
resultArr.push( leftArr[0]<=rightArr[0]?leftArr.shift():rightArr.shift())
}
return resultArr.concat(leftArr).concat(rightArr)
}
return merge(
mergeSort(arr.slice(0,mid)),
mergeSort(arr.slice(mid))
)
}
【归并排序】
最新推荐文章于 2024-06-13 14:43:16 发布