350. 两个数组的交集II
分析
-
由于交集的每个元素的出现次数需要和两个数组中的最小出现次数一致,因此需要一个数据结构来存储
nums1
中每个元素的个数 -
由于
std::unordered_multiset
允许存储重复元素,所以可以用它来存储 nums1 的所有元素 -
遍历
nums2
,检查当前元素是否在unordered_multiset
中,如果存在,则加入结果数组,并从unordered_multiset
中删除该元素,以确保每个元素只被匹配一次
时间复杂度
时间复杂度 O(n + m)
空间复杂度
空间复杂度为 O(n)
C++代码
|
|