Tuesday, August 15, 2017

349. Intersection of Two Arrays

https://leetcode.com/problems/intersection-of-two-arrays/description/
Sort the arrays, and compare. Pay attention to the duplicated numbers.
    vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {
        vector<int> res;
        sort(nums1.begin(),nums1.end());
        sort(nums2.begin(),nums2.end());
        for(int i=0, j=0; i<nums1.size() && j< nums2.size();){
            if(nums1[i]==nums2[j]) { 
                if( res.empty() || nums1[i]!=res.back())
                    res.push_back(nums1[i]); 
                i++; 
                j++;
            }
            else if(nums1[i]<nums2[j]) i++;
            else j++;
        }
        return res;
    }

No comments:

Post a Comment