标签:lse java script var style 归并 font 类型 ons
/*
算法描述
1.把arr分成left,right子序列;
2.比较left,right大小,返回排完序数组,递归两次;
3.递归与栈相关,弹出并返回的值执行其他动作。
*/
function mergeSort(arr) {                                  //参数类型:数组;返回:数组。
        if (arr.length < 2) {
            return arr;
        }
        const middle = Math.floor(arr.length / 2);         //中间值
        const left = arr.slice(0,middle);                  //left[]
        const right = arr.slice(middle);                   //right[]  
        return merge(mergeSort(left),mergeSort(right));    //递归两次
    }
    function merge(left,right) {
        var newArr = [];
        while (left.length && right.length) {              
            if (left[0] < right[0]) {                       //子序列比较大小
                newArr.push(left.shift());
            } else {
                newArr.push(right.shift());
            }
        }
        return newArr.concat(left,right);                    //返回合并好的了子序列
    }
    alert(mergeSort([54,24,15,95,75,35,68,78,12,31,108]));   //12,15,24,31,35,54,68,75,78,95,108
标签:lse java script var style 归并 font 类型 ons
原文地址:https://www.cnblogs.com/Longhua-0/p/9293341.html