首页 > 代码库 > [leetcode] 349. Intersection of Two Arrays 解题报告

[leetcode] 349. Intersection of Two Arrays 解题报告

Given two arrays, write a function to compute their intersection.

Example:
Given nums1 = [1, 2, 2, 1]nums2 = [2, 2], return [2].

Note:

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

第一想法用HashMap<Integer, Boolean>,但错误,用两个HashSet<Ingeger>

一刷:

    public int[] intersection(int[] nums1, int[] nums2) {        Set<Integer> set1 = new HashSet<Integer>();        Set<Integer> set = new HashSet<Integer>();         for (int i = 0; i < nums1.length ; i++) {            set1.add(nums1[i]);        }        for (int i = 0; i < nums2.length; i++) {            if(set1.contains(nums2[i])){                set.add(nums2[i]);            }        }        int[] result = new int[set.size()];        int j=0;        for (Integer num : set             ) {            result[j] = num;            j++;        }        return result;    }

 

[leetcode] 349. Intersection of Two Arrays 解题报告