谜爱阁生活网

详解python数据结构和算法

软件教程  2024-06-24 11:02:08  热度:33℃

1.删除序列相同元素并保持顺序

如果仅仅就是想消除重复元素,通常可以简单的构造一个集合,利用集合之间元素互不相同的特性就可以消除重复,但是这种方法生成的结果中元素的位置会被打乱。下面是我们的解决方案:

详解python数据结构和算法

主要思想就是构造一个集合,然后遍历该列表,如果当前元素不存在集合中就将该元素返回。

yiled时python中构造生成器的关键字。碰到yiled就返回该变量,下一次则从yiled之后的语句开始执行。

使用示例:

注:我们构造的dedupe函数返回的是生成器对象,需要用list转化成可直接输出的列表。

该函数也可以用来文件去除重复行:

2.过滤元素序列

问题--------你有一个数据序列,想利用一些规则从中提取出需要的值或者是缩短序列

方法一:最简单的过滤序列元素的方法就是使用列表推导。比如我们想从下列列表中提取正数:

方法二:生成器迭代

使用列表推导的一个潜在缺陷就是如果输入非常大的时候会产生一个非常大的结果集,占用大量内存。 如果你对内存比较敏感,那么你可以使用生成器表达式迭代产生过滤的元素。

运行结果:

方法三:过滤规则比较复杂,不能简单的在列表推导或者生成器表达式中表达出来时需要考虑使用内建的filter函数。这时候你可以将过滤代码放到一个函数中, 然后使用内建的 filter() 函数。示例如下:

以上所述是小编给大家介绍的python数据结构和算法详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对谜爱阁生活网网的支持!

最近更新

  • 酷狗音乐中使用蝰蛇音效制作工具的具体操作方法

    酷狗音乐中使用蝰蛇音效制作工具的具体操作方法

    2024-11-111277阅读

  • win7电脑中出现声音图标不见了的具体解决方法

    win7电脑中出现声音图标不见了的具体解决方法

    2024-11-11886阅读

  • 车到哪app的详细软件介绍

    车到哪app的详细软件介绍

    2024-11-11995阅读

  • 小米9se中查看序列号的具体操作方法

    小米9se中查看序列号的具体操作方法

    2024-11-11952阅读

  • 迅雷中使用FTP探测器的详细操作方法

    迅雷中使用FTP探测器的详细操作方法

    2024-11-11961阅读

  • ppt制作出小荷才露尖尖角动画场景的具体操作步骤

    ppt制作出小荷才露尖尖角动画场景的具体操作步骤

    2024-11-11811阅读

  • 小米9se中清除内存的具体操作步骤

    小米9se中清除内存的具体操作步骤

    2024-11-11769阅读

  • 千牛中取消消息提醒的具体操作流程

    千牛中取消消息提醒的具体操作流程

    2024-11-11785阅读

  • 抖音app中两个人使用特效具体步骤介绍

    抖音app中两个人使用特效具体步骤介绍

    2024-11-11772阅读

  • 2018Mac mini值得购买吗?Mac mini配置参数及售价详解

    2018Mac mini值得购买吗?Mac mini配置参数及售价详解

    2024-11-11797阅读