首页 > 其他 > 详细

(Collection)350. Intersection of Two Arrays II

时间:2016-06-25 16:33:16      阅读:285      评论:0      收藏:0      [点我收藏+]
/* Given two arrays, write a function to compute their intersection.

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

Note:
Each element in the result should appear as many times as it shows in both arrays.
The result can be in any order.  */



public class Solution {
    public int[] intersect(int[] nums1, int[] nums2) {
     Map<Integer,Integer> map=new HashMap();
     List<Integer> list=new ArrayList();
     for(int num : nums1){
         map.put(num,map.getOrDefault(num,0)+1);
     }
     int count=0;
     for(int num : nums2){
         if(map.containsKey(num) && map.get(num)>0){
             list.add(num);
             map.put(num,map.get(num)-1);
         }
     }
     int[] res=new int[list.size()];
     for(int i=0;i<list.size();i++){
         res[i]=list.get(i);
     }
     return res;
    }
}

  

(Collection)350. Intersection of Two Arrays II

原文:http://www.cnblogs.com/kydnn/p/5616361.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!