Intersection of Two Arrays
题目描述:
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.
题目思路:
1.对nums1中对数字做标记。
2.遍历nums2数组,记录被标记过对元素,注意不能出现重复元素。
3.返回记录对元素结果。
题目代码:
class Solution {
public:
vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {
map<int,int>table;
vector<int>ans;
for(int i = 0; i < nums1.size(); i++){
table[nums1[i]]++;
}
for(int i = 0; i < nums2.size(); i++){
if(table[nums2[i]] && !count(ans.begin(),ans.end(),nums2[i]))
ans.push_back(nums2[i]);
}
return ans;
}
};