给出两个数组,写出一个方法求出它们的交集
样例
例1:
输入: nums1 = [1, 2, 2, 1], nums2 = [2, 2],
输出: [2].
例2:
输入: nums1 = [1, 2], nums2 = [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> setnums1(nums1.begin(),nums1.end());
set<int> reset;
for (int i = 0; i < nums2.size(); i++) {
/* code */
if(setnums1.count(nums2[i])&&!reset.count(nums2[i])) reset.insert(nums2[i]);
}
return vector<int>(reset.begin(),reset.end());
}
};```