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 相关推荐
CodeAsWind 2020-08-17
sunnyhappy0 2020-07-09
cxcxrs 2020-06-26
深思千年 2020-06-10
xmwang0 2020-06-01
fgleeldq 2020-05-27
ShiShuo 2020-05-16
文山羊 2020-05-08
tengyuan 2020-05-07
Leewoxinyiran 2020-05-06
sschencn 2020-05-04
vevoly 2020-05-04
一只码畜 2020-04-22
sulindong0 2020-03-09
GoatSucker 2020-02-24
sdwylry 2020-02-14