LintCode-两数组的交集

来源:互联网 发布:5357端口 编辑:程序博客网 时间:2024/06/05 07:01

返回两个数组的交集
注意事项

Each element in the result must be unique.The result can be in any order.

样例
nums1 = [1, 2, 2, 1], nums2 = [2, 2], 返回 [2].

    public int[] intersection(int[] nums1, int[] nums2) {        // Write your code here        HashSet<Integer> hashSet1 = new HashSet<>();        HashSet<Integer> hashSet2 = new HashSet<>();        for(int i = 0;i<nums1.length;i++){            hashSet1.add(nums1[i]);        }        for(int i = 0;i<nums2.length;i++){            if(hashSet1.contains(nums2[i])&& !hashSet2.contains(nums2[i])){                hashSet2.add(nums2[i]);            }        }        int index = 0;        int []res = new int[hashSet2.size()];        for (int i : hashSet2) {            res[index] = i;            index ++ ;        }        return res;    }

解析:
  使用HashSet,HashSet内部不允许有重复元素

0 0