题目描述:
给定两个排序后的数组 A 和 B,其中 A 的末端有足够的缓冲空间容纳 B。 编写一个方法,将 B 合并入 A 并排序。
初始化 A 和 B 的元素数量分别为 m 和 n。
我的解题:
vector<int> v存放合并的数组
class Solution {
public:
void merge(vector<int>& A, int m, vector<int>& B, int n) {
int i=0,j=0;
vector<int> v;
while(i<m || j<n){
if(i==m) v.push_back(B[j++]);
else if(j==n) v.push_back(A[i++]);
else if( A[i]<=B[j] ) v.push_back(A[i++]);
else if( A[i]>B[j]) v.push_back(B[j++]);
}
for(int a=0;a<m+n;a++){
A[a]=v[a];
}
}
};