题目描述:给定两个数组 nums1
和 nums2
,返回它们的交集 。输出结果中的每个元素一定是唯一的。我们可以不考虑输出结果的顺序 。
解题思路:这个看到唯一就想到我们前面的关于单列集合set:无序,不重复。
先想一下思路,如果是暴力解决是不是应该统计nums1有什么,nums2有什么,然后再对比,如果延续第242题有效字母的异位词解题思路好像也可行,所以就想到能不能把nums1中有什么统计下来,但要保证不重复,然后再一一拿出nums2的数组元素一一对比,如果一样就添加到一个新的set。这样输出的就是重复出现的数字并且不重复。对比之前关于set介绍文章中提到的方法,我们看到找集合中是否存在某个元素直接想到哈希法。
然后这里输出的时候应该是输出数组。这里有用到一个通过stream流将集合转为数组。或者可以选择新建result数组,然后遍历hashset中元素放入result数组最终返回result也可以。