Python 的 sort()使用什么算法?

可能的复制品:
关于在 sort ()方法 中内置的 python

名字说明了一切。

我试图向某人解释为什么他们应该使用 Python 内置的 sort ()函数,而不是滚动他们自己的函数,我意识到我不知道它使用什么算法。

如果重要的话,我们说的是 Python 2.7

142134 次浏览

Python 使用一种名为 Timsort的算法:

Timsort 是一个混合排序算法,源自 merge sort 和 插入排序,旨在执行良好的多种现实世界 它是由 Tim Peters 在2002年为了在 Python 中使用而发明的 该算法找到数据的子集,这些子集是 并使用子集对数据进行更多的排序 这是通过合并一个已识别的子集来完成的,称为 运行,使用现有的运行,直到满足某些条件为止 从2.3版本开始就是 Python 的标准排序算法 现在也用于在 JavaSE7和 Android 上对数组进行排序 平台。

排序算法称为 Timsort

自2.3以来,Python 一直使用 timsort。

更多信息: http://bugs.python.org/file4451/timsort.txt