数据结构与算法作业——合并两个有序数组

安稳与你 提交于 2020-02-29 14:14:15

题目:给定两个有序整数数组 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内剩下的元素有序排在新数组的最前面   
  }
};
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!