350 数组的交集II
读题
- 交集的定义:在两个数组里都要存在。
- 和另一题349的主要区别是重复的元素按照出现次数显示(should appear as many times as it shows in both arrays.)
- 排序后可以优化
初步解题思路
- 遍历的方法:
- 遍历A数组,
- 能够在B数组找到时,就保存下来,
- 保存后判断A的下一个元素。
存在问题和解决:
1.重复元素的交集问题:比如[1,2,2,4]和[2]的交集是[2],查找的结果是[2,2],我第一反应是用短的做A数组遍历,但类似[1,2,4]和[2,2]的交集也是[2],因此这个思路不行。解决方法:找到的元素,从B数组中删除,有的解法中相当于计数减一。
实现细节:
- 返回结果数组的长度不定,需要用动态数组。

浙公网安备 33010602011771号