leetcode-两个数组的交集
Posted HannahGreen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode-两个数组的交集相关的知识,希望对你有一定的参考价值。
C++解题方法:
class Solution { public: vector<int> intersection(vector<int>& nums1, vector<int>& nums2) { unordered_set<int> u; vector<int> answer; for(int i:nums1) u.insert(i); for(int i:nums2){ auto a = u.find(i); if(a!=u.end()){ answer.push_back(i); u.erase(a); } } return answer; } };
# find函数主要实现的是在容器内查找指定的元素,并且这个元素必须是基本数据类型的。
# 查找成功返回一个指向指定元素的迭代器,即元素在容器中的下标,查找失败返回end迭代器。
Python解题方法:
class Solution: def intersection(self, nums1: List[int], nums2: List[int]) -> List[int]: dic = {} for i in nums1: if not dic.get(i): dic[i]=1 new = [] for i in nums2: if dic.get(i): new.append(i) dic[i] -= 1 return new
以上是关于leetcode-两个数组的交集的主要内容,如果未能解决你的问题,请参考以下文章