349. 两个数组的交集

小豆丁 1年前 ⋅ 1180 阅读
349. 两个数组的交集
给定两个数组,编写一个函数来计算它们的交集。

 

示例 1:

输入:nums1 = [1,2,2,1], nums2 = [2,2]
输出:[2]
示例 2:

输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]
输出:[9,4]

解析

直接用set去搞就好了

class Solution {
    public int[] intersection(int[] nums1, int[] nums2) {
        Set<Integer> set = new HashSet<>();
        for(int val:nums1){
            set.add(val);
        }
        Set<Integer> set2 = new HashSet<>();
        for(int val:nums2){
            if(set.contains(val))set2.add(val);
        }
        return set2.stream().mapToInt(i->i).toArray();
    }
}