两个数组的交集

169 阅读1分钟

两个数组的交集

349 两个数组的交集

class Solution {
    public int[] intersection(int[] nums1, int[] nums2) {
        if (nums1 == null || nums1.length == 0 || nums2 == null || nums2.length == 0) {
            return new int[0];
        }

        //nums1去重
        HashSet<Integer> set1 = new HashSet<Integer>();
        for(int elem: nums1) {
            set1.add(elem);
        }

        //结果集set
        HashSet<Integer> resultSet = new HashSet<Integer>();
        for(int elem: nums2) {
            if (set1.contains(elem)) {
                resultSet.add(elem);
            }
        }

        int[] result = new int[resultSet.size()];
        int index = 0;
        for(int elem: resultSet) {
           result[index++] = elem; 
        }
        return result;
    }
}