力扣排序349题 (两个数组的交集)

题目:
给定两个数组 nums1 和 nums2返回它们的交集
输出结果中的每个元素一定是唯一的。我们可以不考虑输出结果的顺序 。

解题思路:

1.目标是中出两个给定列表nums1和nums2中的交集元素,也就是既在nums1中又在nums2中的元素。

2.首先,将列表nums1转换为集合dict1。集合的特点是元素具有唯一性,这样就自动去除了nums1中的重复元素,方便后续找交集操作。

3.同理,将列表nums2转换为集合dict2,同样去除了nums2中的重复元素。

4.然后,使用集合的交集操作复 & 来获取dict1和dict2的交集,得到的结果是一个包含交集元素的新集合result

5.最后,将这个集合result转换会列表形式并返回,因为题目要求返回结果是列表形式。

在  intersection  方法中:
一、 dict_1 = set(nums1) :这行代码通过调用  set  函数将列表  nums1  转换为集合  dict_1 。例如,如果  nums1 = [1, 2, 2, 3] ,那么  dict_1  就会是  {1, 2, 3} 。
二、dict_2 = set(nums2) :类似地,将列表  nums2  转换为集合  dict_2 。
三、result = dict_1 & dict_2 :这里使用集合的交集运算符  &  来计算  dict_1  和  dict_2  的交集。交集运算会找出同时存在于两个集合中的元素,例如,如果  dict_1 = {1, 2, 3}  且  dict_2 = {2, 3, 4} ,那么  result  就会是  {2, 3} 。
四、 return list(result) :最后,将得到的交集集合  result  通过调用  list  函数转换为列表形式,以满足函数返回值要求为列表的条件,然后返回这个列表。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值