题目:给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。
解题算法:
class Solution
{public:
void merge(vector<int>& nums1, int m, vector<int>& nums2, int n)
{
int a=m-1;
int b=n-1;
int l=m+n-1;
while(a>=0&&b>=0)
nums1[l--]=nums1[a]>nums2[b]?nums1[a--]:nums2[b--];
while(b>=0)
nums1[l--]=nums2[b--];//nums2内剩下的元素有序排在新数组的最前面
}
};
来源:CSDN
作者:SuperF?
链接:https://blog.csdn.net/weixin_46338672/article/details/104571592