LeetCode 88. Merge Sorted Array(归并两个有序数组)
题意:归并两个有序数组,把归并结果存到第一个数组上。
class Solution {
public:
void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
int pos1 = m - 1;
int pos2 = n - 1;
int len = m + n - 1;
while(pos1 >= 0 || pos2 >= 0){
if(pos2 < 0){
nums1[len--] = nums1[pos1--];
}
else if(pos1 < 0){
nums1[len--] = nums2[pos2--];
}
else if(nums1[pos1] >= nums2[pos2]){
nums1[len--] = nums1[pos1--];
}
else{
nums1[len--] = nums2[pos2--];
}
}
}
};

浙公网安备 33010602011771号