当前位置: 代码迷 >> 综合 >> [LeetCode]Merge Sorted Array(合并两个有序的数组)
  详细解决方案

[LeetCode]Merge Sorted Array(合并两个有序的数组)

热度:6   发布时间:2023-12-06 19:20:00.0
思路:从后往前比,然后处理剩下的元素。
因为不允许使用多余的数组空间,就不好对两个数组从前往后进行比较(插入位置比较麻烦)
class Solution {
public:void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {while(m>0&&n>0){if(nums1[m-1]>nums2[n-1]){nums1[n+m-1]=nums1[m-1];m--;}else{nums1[n+m-1]=nums2[n-1];n--;}}while(n>0){nums1[n-1]=nums2[n-1];n--;}}
};

  相关解决方案