Thursday, November 28, 2013

Merge Sorted Array LeetCode

这个题就是从后面向前面存数据,唯一需要注意的是,B没有都存入到A中,要再check一下,B是否都存入了A。


public void merge(int A[], int m, int B[], int n) {
        int len = m + n -1;
        int lenA = m - 1;
        int lenB = n - 1;
        while(lenA >= 0 && lenB >= 0 ){
            if(A[lenA] > B[lenB]){
                A[len] = A[lenA];
                len--;
                lenA--;
            }else{
                A[len] = B[lenB];
                len--;
                lenB--;
            }
        }
        while(lenB>=0){
            A[len] = B[lenB];
            len--;
            lenB--;
        }
    }

No comments:

Post a Comment