从后往前遍历,查看当前A和B数字中哪个最后面的数比较大,就把它放在A数组的对应位置(第m+n个位置)

public:
    void merge(int A[], int m, int B[], int n) {
        for(int i=m+n-1;i>=0;i--){
            if(m>0&&n>0){
                if(A[m-1]>B[n-1]){
                    A[i]=A[m-1];
                    m--;
                }else{
                    A[i]=B[n-1];
                    n--;
                }
            }
            else if(n>0) A[i]=B[n-1],n--;
            //A有剩余不用管,因为已经在A数组的对应位置了
        }
    }
};