OJ lintcode 两数组的交 II

计算两个数组的交
注意事项
每个元素出现次数得和在数组里一样
答案可以以任意顺序给出
您在真实的面试中是否遇到过这个题?
Yes
样例
nums1 = [1, 2, 2, 1], nums2 = [2, 2], 返回 [2, 2].

class Solution {
public:
    /**
     * @param nums1 an integer array
     * @param nums2 an integer array
     * @return an integer array
     */
    vector intersection(vector& nums1, vector& nums2) {
        // Write your code here
        vector result;
        multiset  s(nums1.begin(),nums1.end());
        for(auto it=nums2.begin();it!=nums2.end();it++){
            auto ret=s.find((*it));
            if(ret!=s.end()){
                //find
                result.push_back(*ret);
                s.erase(ret);
            }
        }

        return result;

    }
};

你可能感兴趣的:(OJ lintcode 两数组的交 II)