返回两个数组的交
您在真实的面试中是否遇到过这个题?
Yes
样例
nums1 = [1, 2, 2, 1], nums2 = [2, 2], 返回 [2].
class Solution {
public:
/**
* @param nums1 an integer array
* @param nums2 an integer array
* @return an integer array
*/
vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {
// Write your code here
set<int> s1(nums1.begin(),nums1.end());
set<int> s2(nums2.begin(),nums2.end());
vector<int> result;
for(auto it2=s2.begin();it2!=s2.end();it2++){
auto ret=s1.find((*it2));
if(s1.end()!=ret)
{//find
result.push_back(*ret);
}
}
return result;
}
};