LeetCode Java刷题笔记—349. 两个数组的交集

  • Post author:
  • Post category:java




349. 两个数组的交集

给定两个数组 nums1 和 nums2 ,返回 它们的交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。

简单难度。使用两个Hashset,首先遍历一个数组加入到第一个set集合,然后遍历第二个数组看是否有重复的元素,如果有则加入到第二个set集合,最后将第二个set集合的元素放到数组中返回即可。

public int[] intersection( int[] nums1, int[] nums2 ){

   HashSet<Integer> set1 = new HashSet<>();
   HashSet<Integer> set2 = new HashSet<>();
   //将第一个数组元素存入进去
   for( int num : nums1 ){
      set1.add( num );
   }
   //遍历比较是否有重复元素,如果有则加入到第二个set
   for( int num : nums2 ){
      if( set1.contains( num ) ){
         set2.add( num );
      }
   }
   //将第二个set的元素加入到数组中
   int[] res = new int[ set2.size() ];
   int i = 0;
   for( Integer re : set2 ){
      res[ i++ ] = re;
   }
   return res;
}



版权声明:本文为weixin_43767015原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。