编辑代码


function merge(a1, a2) {
    const temp = [];
    let i = 0;
    let j = 0;
    while(i < a1.length && j < a2.length) {
        if(a1[i] <= a2[j]) {
            temp.push(a1[i]);
            i++;
        }else {
            temp.push(a2[j]);
            j++;
        }
    }
    if(i < a1.length) {
        temp.push(... a1.slice(i))
    }
    if(j < a2.length) {
        temp.push(... a2.slice(j))
    }
    return temp;
}
function mergeSort(arr) {
    if(arr.length < 2) {
        return arr
    }
    let mid = Math.ceil(arr.length / 2);
    let leftArr = mergeSort(arr.slice(0, mid));
    let rightArr = mergeSort(arr.slice(mid));
    return merge(leftArr, rightArr)

}
const arr = [12,11];
console.log(mergeSort(arr))