Leetcode 88. 合并两个有序数组(DAY 139) ---- LeetCode 精选 TOP 面试题

淩亂°似流年 2022-09-01 13:47 202阅读 0赞

文章目录

    • 原题题目
    • 代码实现(首刷自解)

原题题目


在这里插入图片描述


代码实现(首刷自解)


  1. class Solution {
  2. public:
  3. void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
  4. int nums1_sorted_pos = 0,nums2_sorted_pos = 0,total_sorted_pos = 0;
  5. vector<int> tempnums1(nums1.begin(),nums1.begin()+m);
  6. while(nums1_sorted_pos != m || nums2_sorted_pos != n)
  7. {
  8. if(nums1_sorted_pos == m) nums1[total_sorted_pos++] = nums2[nums2_sorted_pos++];
  9. else if(nums2_sorted_pos == n) nums1[total_sorted_pos++] = tempnums1[nums1_sorted_pos++];
  10. else
  11. {
  12. if(tempnums1[nums1_sorted_pos] <= nums2[nums2_sorted_pos])
  13. nums1[total_sorted_pos++] = tempnums1[nums1_sorted_pos++];
  14. else
  15. nums1[total_sorted_pos++] = nums2[nums2_sorted_pos++];
  16. }
  17. }
  18. }
  19. };

发表评论

表情:
评论列表 (有 0 条评论,202人围观)

还没有评论,来说两句吧...

相关阅读