思路:从后往前merge,这样可以不用额外的空间
class Solution {
public:
void merge(int A[], int m, int B[], int n) {
// Start typing your C/C++ solution below
// DO NOT write int main() function
int i = m-1, j = n-1, k = m+n-1;
while(i >= 0 && j >= 0)
{
if(A[i] > B[j])
A[k--] = A[i--];
else
A[k--] = B[j--];
}
while(i >= 0)
A[k--] = A[i--];
while(j >= 0)
A[k--] = B[j--];
}
};