349. Intersection of Two Arrays

class Solution {
public:
vector intersection(vector& nums1, vector& nums2) {
sort(nums1.begin(),nums1.end());
sort(nums2.begin(),nums2.end());

vector<int> a;


    int i=0;
    int j=0;
    while(i<nums1.size()&&j<nums2.size())
    {
         if(nums2[j]==nums1[i]){
            a.push_back(nums2[j]);
            while(i<nums1.size()&&j<nums2.size()&&nums2[j]==nums1[i])
                i++;
        }

        while(i<nums1.size()&&j<nums2.size()&&nums2[j]<nums1[i]){
            j++;
        }
        while(j<nums2.size()&&i<nums1.size()&&nums2[j]>nums1[i]){
            i++;
        }

    }

    return a;


}

};

相关文章
相关标签/搜索