js 对两个有序数组进行合并排序

其实这个和内部排序算法中的归并排序类似,简单方式可以concat后快排,时间复杂度O(nlog2n),当然有序数组的条件不能白白浪费,下面代码是两个数组两个移动指针的解法

function sort1(a,b){
    var i=0,j=0,k=0;
    var result=[]
    while(i

基本思路是,两个指针都指向数组第一个元素,,对比两个数值,如果a 小,就把a的值赋值给最终数组,然后指针向后移一位,如果b小,将b的值赋值给最终数组,b数组指针向后移一位,如果某个数组指针已经到头,那么另外一个数组剩下的值直接复制到最终数组,,代码中以数组下标代替指针。。时间复杂度O(m+n);

你可能感兴趣的:(js 对两个有序数组进行合并排序)