>웹 프론트엔드 >JS 튜토리얼 >js_javascript 기술의 3가지 유형 병합 작업에 대한 예제 코드

js_javascript 기술의 3가지 유형 병합 작업에 대한 예제 코드

WBOY
WBOY원래의
2016-05-16 17:18:09886검색

第一种:

复代码 代码如下:

/**량 형제의*/
함수 병합(a, b) {
    var aLen = a.length,
        bLen = b.length,
        maxLen = Math.max(aLen, bLen),
sumLen = aLen bLen,
        결과 = [],
        ap = 0,
        bp = 0;

     while (result.length < sumLen) {
        if (ap < aLen && bp < bLen) {
            if(a[ap] > b[bp]){
                결과 .push(b[bp ]);
            } else {
                result.push(a[ap ]);
           }
       } else if (!(ap < aLen)){
            while(bp < bLen){
                result.push(b[bp ]);
           }
        } else if (!(bp < bLen)){
           (ap < aLen){
                result.push(a[ap ]);
            }
        }
    }
    결과 반환;
}

第二种:

复代码 代码如下:

/**루준*/
함수 병합(arr1, arr2){

    var i = 0;
    var j = 0;
    var c = 0;
    var k;
var len1 = arr1.length;
    var len2 = arr2.length;
    var arr = [];
    for(;i        if( arr1[i ] > arr2[j]  ){
            arr.push( arr2[j] );
            j ;
        }else{
            arr.push( arr1[i] );
            나 ;
        }
        //if(i==len1 || j==len2){
        //    break;
        //}
    }

    if(i ==len1){
        //arr = arr.concat(arr2.slice(j));

        for(k=j; k           arr.push( arr2[k] );
        }
    }

    if(j==len2){
        //arr = arr.concat(arr1.slice(i))
        for (k=i; k            arr.push( arr1[k] );
        }

    }

    return arr;
}

第三种:

复代码 代码如下:

/*金锐적*/
함수 병합(a,b){
    var x = 0;
    var l = 0;
    var list = [];
    var aLen = a.length;
    var bLen = b.length;

    for(var i = 0; i < bLen; i ){
        for(var j = x; j            if(b[i] < a[j]){
               list.push(b[i]);
              l = i;
             휴식;
           }else{              
               list.push(a[j]);
              x ;
           }
        }    
    }           

    if(x == a.length){
        for(var y = l; y < bLen; y ){
            list.push(b[y]);
        }
> 목록;
}



20W 전력 소비량은 15W 이하입니다.
1: 푸시를 위한 연결 방법을 사용하세요.

2:循环比동안循环快。

3:var a = b || 3; //这种操작품很消耗时间

4: 휴식, 계속 在已确定不需要再循环时很耗时。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.