合并两个排序的整数数组A和B变成一个新的数组。
题目比较简单,新建一个数组,从后向前一次遍历两个数组,按大小插入到新的数组中。
class Solution {
public:
/**
* @param A and B: sorted integer array A and B.
* @return: A new sorted integer array
*/
vector<int> mergeSortedArray(vector<int> &A, vector<int> &B) {
// write your code here
int i = A.size() - 1,j = B.size() - 1;
int k = A.size() + B.size() - 1;
vector<int> result(k + 1,0);
while (i >= 0 && j >= 0) {
if (A[i] > B[j]) result[k--] = A[i--];
else result[k--] = B[j--];
}
while (i >= 0) result[k--] = A[i--];
while (j >= 0) result[k--] = B[j--];
return result;
}
};
网友评论