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 @   风不再来  阅读(128)  评论(0编辑  收藏  举报
编辑推荐:
· 聊一聊 C#前台线程 如何阻塞程序退出
· 几种数据库优化技巧
· 聊一聊坑人的 C# MySql.Data SDK
· 使用 .NET Core 实现一个自定义日志记录器
· [杂谈]如何选择:Session 还是 JWT?
阅读排行:
· 一个.NET开源、易于使用的屏幕录制工具
· 【经验】几种数据库优化技巧
· C#中 Task 结合 CancellationTokenSource的妙用
· Superpower:一个基于 C# 的文本解析工具开源项目
· 反微服务架构(A Macro Services Framework)
点击右上角即可分享
微信分享提示