
class Solution {
public:
vector<int> intersect(vector<int>& nums1, vector<int>& nums2) {
map<int, int> record;
vector<int> res;
int N1 = nums1.size(), N2 = nums2.size();
for(int i =0; i<N1; i++){
record[nums1[i]]++;
}
for (int i=0; i<N2; i++){
if (record[nums2[i]] > 0){
res.push_back(nums2[i]);
record[nums2[i]]--;
}
}
return res;
}
};
C++交集算法实现

本文介绍了一种使用C++实现的寻找两个整数数组交集的算法。通过记录第一个数组中元素出现的次数,然后遍历第二个数组,将同时出现在两个数组中的元素加入结果数组,并减少记录中该元素的出现次数,确保了结果的正确性。
416

被折叠的 条评论
为什么被折叠?



