#include <unordered_map>
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param nums1 int整型vector
* @param nums2 int整型vector
* @return int整型vector
*/
vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {
// write code here
unordered_map<int,int>count1;
unordered_map<int,int>count2;
for(int i=0;i<nums1.size();i++){
count1[nums1[i]]+=1;
}
for(int i=0;i<nums2.size();i++){
count2[nums2[i]]+=1;
}
vector<int>new_num;
//从nums1中找数据
for(int i=0;i<nums1.size();i++){
if(count1[nums1[i]]*count2[nums1[i]]>0){
new_num.push_back(nums1[i]);
count1[nums1[i]]=0;
}
}
//时间为n,空间为n
return new_num;
}
};