547. 两数组的交集

547. 两数组的交集

中文English

给出两个数组,写出一个方法求出它们的交集

样例

例1:

输入: nums1 = [1, 2, 2, 1], nums2 = [2, 2], 
输出: [2].

例2:

输入: nums1 = [1, 2], nums2 = [2], 
输出: [2].

挑战

可以用三种不同的方法实现吗?

注意事项

  • 结果中的每个元素必须是唯一的。
  • 结果需要为升序。
class Solution:
    """
    @param nums1: an integer array
    @param nums2: an integer array
    @return: an integer array
    """
    def intersection(self, nums1, nums2):
        # write your code here
        s1,s2=set(nums1),set(nums2)##set是对去重,得到后的是字典的形式
        return [i for i in s1 if i in s2]

字典求交集和并集的方式:

class Solution:
    """
    @param nums1: an integer array
    @param nums2: an integer array
    @return: an integer array
    """
    def intersection(self, nums1, nums2):
        # write your code here
        s1,s2 = set(nums1),set(nums2)
        ##相与得到的是字典的格式,所以需要加list转换为列表的格式
        return list(s1&s2)
'''
知识点:
1.{}之间可以求交集和并集,字典。交集:{}&{} 并集:{}^{} 相与或者相并得到的是字典的格式。  注意:[]和()之间不可以求并集和交集,列表和数组
2.去重,set(),注意:可以对数组,列表,以及字典都可以去重。set([1,3,3,2]),set({1,33,4,31,1}),set((1,3,3,4,5))
3.字典转列表,即{} >> [],可以用list方法即可
'''

posted @ 2020-03-14 03:22  风不再来  阅读(125)  评论(0编辑  收藏  举报