草 稿

Python排序以及查找的最佳实践

读书笔记

来自Python Cookbook

  1. 排序的重要性:在所有程序运行过程中,几乎有25%的时间都花费在排序上。(这还是多年前的数据)

  2. Python中所有排序和搜索总结而言有两条最佳实践:

  3. 当需要排序的时候,尽量设法使用内置的Python列表的sort方法

    Python的内置排序应该算最快的实现方法。

    在2.4版本之后,Python的内置排序已经是一个可以自适应的复合排序算法。对于各种情况都可以有较快的实现速度

  4. 当需要搜索的时候,尽量设法时候内置词典

    字典是使用Hash

  5. 最常用的规则,使用DSU(decorate-sort-undorate)模式。

    这是一种通用的方法,通过使用辅助列表,可以将问题转化为列表的排序,从而可以使用默认的sort。

  6. DSU的使用方式

  7. decorate

    化为可以使用sort的对象

  8. sort

    使用内置sort

  9. undorate

    转化回来

  10. 2.4版本之后增加了内置DSU支持

    Python2.4之后,可以在sort中指定变量key,从而使用原生DSU

赞了此轻单

评论(0