349. Intersection of Two Arrays【LeetCode】
问题描述
当作回顾一下set的用法吧。
set的常用方法:
begin() 返回set容器的第一个迭代器
end() 返回set容器的最后一个迭代器
clear() 删除set容器中的所有的元素
empty() 判断set容器是否为空
max_size() 返回set容器可能包含的元素最大个数
size() 返回当前set容器中的元素个数
rbegin 返回的值和end()相同
rend() 返回的值和rbegin()相同
注:没有索引的取法!!map也没有!!
代码如下:
class Solution {
public:
vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {
set<int> s1,s2;
vector<int> v;
for(int i=0;i<nums1.size();i++)
s1.insert(nums1[i]);
for(int i=0;i<nums2.size();i++)
s2.insert(nums2[i]);
set<int>::iterator it=s1.begin();
for(int i = 0;i<s1.size();i++,it++)
{
if(s2.find(*it)!=s2.end())
v.push_back(*it);
}
return v;
}
};