[LeetCode] Intersection of Two Arrays
Posted immjc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[LeetCode] 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.
求两个数组的交集,并且交集中的元素唯一,利用set存储nums1中去重后的元素,通过set定义可以快速实现,然后用nums2中的元素查找set中的元素,这里需要注意的是交集中的元素唯一,所以需要在set中找到元素后删除set中的该元素。
class Solution { public: vector<int> intersection(vector<int>& nums1, vector<int>& nums2) { unordered_set<int> s(nums1.begin(), nums1.end()); vector<int> res; for (int num2 : nums2) if (s.count(num2)) { res.push_back(num2); s.erase(num2); } return res; } }; // 6 ms
以上是关于[LeetCode] Intersection of Two Arrays的主要内容,如果未能解决你的问题,请参考以下文章
[LeetCode] 160. Intersection of Two Linked Lists
349. Intersection of Two Arrays
[LeetCode] 349 Intersection of Two Arrays & 350 Intersection of Two Arrays II
LeetCode:Intersection of Two Arrays