【Leetcode】88. Merge Sorted Array 绝地灬酷狼 2022-02-22 01:55 141阅读 0赞 Given two sorted integer arrays *nums1* and *nums2*, merge *nums2* into *nums1* as one sorted array. **Note:** * The number of elements initialized in *nums1* and *nums2* are *m* and *n*respectively. * You may assume that *nums1* has enough space (size that is greater or equal to *m* \+ *n*) to hold additional elements from *nums2*. **Example:** Input: nums1 = [1,2,3,0,0,0], m = 3 nums2 = [2,5,6], n = 3 Output: [1,2,2,3,5,6] 题目大意: 将nums2加入到nums1中,并且将其排序好。 class Solution { public: void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) { int id1,id2; id1 = m - 1; id2 = n - 1; for(int i = nums1.size()-1;i>=0;i--){ if(id1>=0&&id2>=0){ if(nums1[id1]>=nums2[id2]){ nums1[i] = nums1[id1]; id1--; }else{ nums1[i] = nums2[id2]; id2--; } }else if(id1>=0&&id2<0){ nums1[i] = nums1[id1]; id1--; }else{ nums1[i] = nums2[id2]; id2--; } } } };
还没有评论,来说两句吧...