Given two arrays, write a function to compute their intersection.
Example:
Given nums1 = [1, 2, 2, 1]
, nums2 = [2,
2]
, return [2]
.
Note:
- Each element in the result must be unique.
- The result can be in any order.
class Solution {
public:
vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {
map<int, int> m;
vector<int> ivec;
int n1 = nums1.size(), n2 = nums2.size();
for (int i = 0; i != n1; ++i)
m[nums1[i]]++;
for (int j = 0; j != n2; ++j)
{
if (m[nums2[j]] != 0)
{
ivec.push_back(nums2[j]);
m[nums2[j]] = 0;
}
}
return ivec;
}
};