首页 > 编程语言 > 详细

归并排序

时间:2014-12-15 23:20:17      阅读:329      评论:0      收藏:0      [点我收藏+]

归并排序,具体如下图:
bubuko.com,布布扣

代码实现:

function merger( a, b ){
    var array = [], m = a.length, n = b.length;
    for(var i = 0, j = 0; i < m && j <n ){
        if(a[i] > b[j]){
            array.push(b[j]);
            ++j;
        }else{
            array.push( a[i] );
            ++i;
        }
    }
    while( i < m ){
        array.push( ret[i] );
        ++i;
    }
    while( j < n ){
        array.push( ret[j] );
        ++j;
    }
    return array;
}
function mergerSort(arr){
    if(arr.length <= 1) return arr;
    var position = Math.floor(arr.length/2);
    var a = arr.slice(0 , position);
    var b = arr.slice (position);
    return merger( mergerSort(a), mergerSort(b) );
}
 

 

归并排序

原文:http://www.cnblogs.com/clearfix/p/4166009.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!