📅  最后修改于: 2023-12-03 15:42:13.127000             🧑  作者: Mango
给定两个整数数组arr1和arr2,求arr1与arr2交集的元素个数。
arr1 = [1, 2, 3, 4, 5]
arr2 = [2, 4, 6, 8, 10]
assert intersection_count(arr1, arr2) == 2
要求两个数组的交集元素个数,我们可以使用集合的交集操作来实现。
其他语言应该也会有类似于Python中的集合操作,而对于Python而言,可以使用set()
函数将一个列表转化为集合,也可以使用&
运算符得到交集,并使用len()
函数获取交集的元素个数。
def intersection_count(arr1, arr2):
return len(set(arr1) & set(arr2))
由于Python中集合操作的时间复杂度为O(n),因此本题的时间复杂度为O(n)。而空间复杂度取决于集合的大小,因此最坏情况下的空间复杂度为O(n)。