给定两个数组,编写一个函数来计算它们的交集。
输出结果中每个元素出现的次数,应与元素在两个数组中出现次数的最小值一致。
我们可以不考虑输出结果的顺序。
官方思路:
1.遍历数组1,用一个map记录每个数字的出现次数.即,以数字为Key,出现次数为Value.每次对应的Value++.
2.遍历数组2,以数字为Key,在map中查找.如果查找成功,该数字存入输出结果当中,然后Value–.如果Value为0,从map中删除该数字.
优点:
只需要建立一个map.
我的思路:
还是练的太少,套路见的不多.遍历了两个数组,各自建立了map,用于储存数字与出现次数.然后遍历其中一个较小的map,在另外一个map中查找数字,取较小的出现次数.
Leetcode practice everyday. For what? No disadvantages.