2020/3/31 打卡
题目
给定两个数组,编写一个函数来计算它们的交集。 示例 1: 输入: nums1 = [1,2,2,1], nums2 = [2,2] 输出: [2,2] 示例 2: 输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4] 输出: [4,9]
思路
一种分成两步的巧妙的方法: (1) 首先计算重复的 字母元素。 (2) 根据 重复元素, 去分别判别在两个数组中出现的次数, 然后按照较小的次数值作为收集的次数,这就是交集下元素出现的次数。
代码
def fun1(num1,num2):
# 第一步,统计重复字母元素
inter=set(num1)&set(num2)
# 第二步,进行出现次数的统计 ,并根据次数值,使用更小的次数值进行收集
l=[]
for i in inter:
l+=[i]*min(num1.count(i),num2.count(i))
# 返回收集结果
return l