Intersection Of Array 发表于 2017-05-29 | 分类于 算法 Intersection Of Array题目描述: 给定两个数组,找到两个数组中数字的交集 例子: 见LeetCode349 解题思路: 我们首先对第一个数组进行构建哈希表,然后遍历第二个数组,如果数字在哈希表中,将其保存到结果中,并将该值从哈希表中删除即可 代码如下:123456789101112131415161718192021class Solution {public: vector<int> intersection(vector<int>& nums1, vector<int>& nums2) { set<int> hash; vector<int> res; for (int i = 0; i < nums1.size(); i++){ if (hash.find(nums1[i]) == hash.end()){ hash.insert({nums1[i]}); //对第一个数组构建哈希表 } } for (int j = 0; j < nums2.size(); j++){ if (hash.find(nums2[j]) != hash.end()){ hash.erase(nums2[j]); res.push_back(nums2[j]); //遍历第二个数组中的数 } } return res; }};