两个数组的交集2
Posted Alice_yufeng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了两个数组的交集2相关的知识,希望对你有一定的参考价值。
class Solution
public int[] intersect(int[] nums1, int[] nums2)
int n1 = nums1.length;
int n2 = nums2.length;
int n = Math.min(n1,n2);
int[] arr = new int[n];
Map<Integer,Integer> map = new HashMap<>();
for(int i = 0; i < n1; i++)
if(!map.containsKey(nums1[i]))
map.put(nums1[i],1);
else
map.put(nums1[i],map.get(nums1[i])+1);
int k = 0;
for(int j = 0; j < n2; j++)
if(map.containsKey(nums2[j]))
arr[k] = nums2[j];
k++;
int x = map.get(nums2[j]) - 1;
if(x != 0)
map.put(nums2[j],x);
else
map.remove(nums2[j]);
int[] res = new int[k];
for(int i = 0; i < k; i++)
res[i] = arr[i];
return res;
以上是关于两个数组的交集2的主要内容,如果未能解决你的问题,请参考以下文章
Leetcode练习(Python):第350题:两个数组的交集 II:给定两个数组,编写一个函数来计算它们的交集。