


解决思路
set
其思想是将两个数组转换为集合 set,然后迭代较小的集合检查是否存在在较大集合中。平均情况下,这种方法的时间复杂度为 O(n+m)。
/
class Solution {public int[] intersection(int[] nums1, int[] nums2) {HashSet<Integer> set1 = new HashSet<Integer>();for (Integer n : nums1) set1.add(n);HashSet<Integer> set2 = new HashSet<Integer>();for (Integer n : nums2) set2.add(n);//求set的交集set1.retainAll(set2);int [] output = new int[set1.size()];int idx = 0;for (int s : set1) output[idx++] = s;return output;}}
