349哈希表-两个数组的交集

Posted 孤注一掷 、

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了349哈希表-两个数组的交集相关的知识,希望对你有一定的参考价值。

题目

 链接:349. 两个数组的交集 - 力扣(LeetCode)

思路

使用set数据结构,先遍历第一个数组,添加到set中,然后遍历第二个数组,看第二个数组中的元素是否在set中含有,有的话加入resSet中。最后申请一个数组来存放resSet结果。

代码

class Solution 
    public int[] intersection(int[] nums1, int[] nums2) 
        if(nums1 == null || nums1.length == 0 || 
        nums2 == null || nums2.length == 0)
            return new int[0];
        
        Set<Integer> set1 = new HashSet<>();
        Set<Integer> resSet = new HashSet<>();
        for(int i : nums1)
            set1.add(i);
        
        for(int i : nums2)
            if(set1.contains(i))
                resSet.add(i);
            
        
        //申请一个数组存放resSet中的元素,最后返回数组
        int[] arr = new int[resSet.size()];
        int j = 0;
        for(int i : resSet)
            arr[j++] = i;
        
        return arr;
    

以上是关于349哈希表-两个数组的交集的主要内容,如果未能解决你的问题,请参考以下文章

代码随想录算法训练营第六天 | 242.有效的字母异位词349. 两个数组的交集202. 快乐数1. 两数之和

哈希表的查找与插入及删除

哈希表、哈希算法、一致性哈希表

哈希算法从原理到实战

#yyds干货盘点#看动画学算法之:hashtable

Java数据结构和算法(十三)——哈希表