0%

349.两个数组的交集

349. 两个数组的交集

set

1
2
3
4
5
6
7
8
9
10
11
12
vector<int> intersection(vector<int>& nums1,vector<int>& nums2){
unordered_set<int> result_set;//存放结果,给结果去重
unordered_set<int> nums_set(nums1.begin(),nums1.end());
for(int num: nums2){
//发现nums2的元素,在nums_set里又出现过
//nums_set.end() 表示 std::unordered_set 中最后一个元素的下一个位置的迭代器
if(nums_set.find(num)!=nums_set.end()){
result_set.insert(num);
}
}
return vector<int>(result_set.begin(),result.end());
}

数组

1
2
3
4
5
6
7
8
9
10
11
12
13
vector<int> intersection(vector<int>& nums1,vector<int>& nums2){
unordered_set<int> result_set; //save result
int hash[1005]={0};//默认0
for(int num:nums1){//出现过的字母在hash数组中做记录
hash[num]=1;
}
for(int num:num2){//nums2中出现的话,result记录
if(hash[num]==1){
result_set.inset(num);
}
}
return vector<int>(result_set.begin(),result_sey.end());
}
-------------本文结束感谢您的阅读-------------
老板你好,讨口饭吃