在Python中,计算两个数组的交集可以通过多种方法实现,以下是几种常见的方法:
方法一:使用内置函数 `intersection()`
def intersection(nums1, nums2):return list(set(nums1).intersection(set(nums2)))
方法二:排序后双指针法
def intersection(nums1, nums2):nums1.sort()nums2.sort()result = []i, j = 0, 0while i < len(nums1) and j < len(nums2):if nums1[i] == nums2[j]:result.append(nums1[i])i += 1j += 1elif nums1[i] < nums2[j]:i += 1else:j += 1return result

方法三:使用哈希表
def intersection(nums1, nums2):hash_dict = {}result = []for num in nums1:if num not in hash_dict:hash_dict[num] = 1for num in nums2:if num in hash_dict and hash_dict[num] == 1:result.append(num)hash_dict[num] = 0 避免重复添加return result
方法四:使用集合操作
def intersection(nums1, nums2):return list(set(nums1) & set(nums2))
以上方法都可以用来计算两个数组的交集,你可以根据具体的需求和场景选择合适的方法。需要注意的是,输出结果中的元素应该是唯一的,且不考虑输出结果的顺序。
