Description:
Example:
Note:
Solution 1(C++)
Solution 2(C++)
算法分析:
总体的算法思路都很类似,都是利用set容器,便于查找和其中元素不重复的特点,来实现交集的获取。不同的就是在程序上,对STL容器的标准函数能不能用的熟练呢。
程序分析:
先暂不论unordered_set< int >,这里可以借机复习一下C++-std::Vector、C++-std::Set。这里还需要额外说一下的就是,这里补充了通过vector来创建一个set的方法:
unordered_set<int> m(nums1.begin(), nums1.end());
其次,判断一个元素在set里是否已经存在,除了解法一中的set::find()函数,还可以调用set::count()函数。例如:
for (auto a : nums2)
if (m.count(a)) {
res.push_back(a);
m.erase(a);
}