本文主要是介绍LeetCode 350. 两个数组的交集 II(哈希表),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Description
给定两个数组,编写一个函数来计算它们的交集。示例 1:输入: nums1 = [1,2,2,1], nums2 = [2,2]
输出: [2,2]
示例 2:输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4]
输出: [4,9]
说明:输出结果中每个元素出现的次数,应与元素在两个数组中出现的次数一致。
我们可以不考虑输出结果的顺序。来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/intersection-of-two-arrays-ii
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
Solution 1
哈希表。
class Solution:def intersect(self, nums1: List[int], nums2: List[int]) -> List[int]:hashmap = {}for n in nums1:if n in hashmap: hashmap[n] += 1else: hashmap[n] = 1res = []for n in nums2:if n in hashmap and hashmap[n] >= 1:res.append(n)hashmap[n] -= 1return res
Solution 2
也可以使用排序的方法=>题解
这篇关于LeetCode 350. 两个数组的交集 II(哈希表)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!