5/30/2014

25. Merge Sorted Array

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

1 条评论:

  1. 1. 选定最后一个position:m+n-1.
    2. 从后往前填满.

    回复删除