给定一个数组,编写一个函数来计算它们的交集。
示例:
输入:nums1 = [1, 2, 2, 1], nums2 = [2, 2]
输出:[2, 2]
说明:
- 输出结果中每个元素出现的次数应与元素在两个数组中出现的次数一致;
- 可以不考虑输出结果的顺序。
思路:判断短列表中的元素是否在长列表中,若在,则添加到心底列表中,同时长列表删除相应元素,避免重复。
class Solution:
def intersect(self, nums1, nums2):
nums = []
if len(nums1) < len(nums2):
short = nums1
lon = nums2
else:
short = nums2
lon = nums1
for i in short:
if i in lon:
lon.remove(i)
nums.append(i)
return nums