Leetcode349两个数组的交集 寻找某特定元素在hash表中是否存在:unordered_set中find()和end()函数的使用:hash.find(num)不=hash.end()

find()和end()函数的使用

地址

https://leetcode-cn.com/problems/intersection-of-two-arrays/submissions/

描述

在这里插入图片描述

思想

代码

y总

class Solution {
    
    
public:
    vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {
    
    
        vector<int> ans;
        unordered_set<int> hash(nums1.begin(),nums1.end());
        for(auto num:nums2){
    
    
            if(hash.find(num)!=hash.end()){
    
    
                ans.push_back(num);
                hash.erase(num);
            }
        }
        return ans;
    }
};

题解

class Solution {
    
    
public:
    vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {
    
    
        unordered_set<int> res;
        //hash用于存放nums1的非重复数组
        unordered_set<int> hash(nums1.begin(),nums1.end());
        for(auto num:nums2){
    
    
            if(hash.find(num)!=hash.end()){
    
    
                res.insert(num);
            }
        }
        vector <int> ans(res.begin(),res.end());
        return ans;
    }
};

猜你喜欢

转载自blog.csdn.net/qq_52934831/article/details/121793708
今日推荐