用Python排序算法的最快方法

cod*_*ark 1 python sorting algorithm

我正在为Codility做准备.我需要找出找到具有大值和多个条目的数组的最快方法是什么?

内置python排序是最快还是我需要实现一些其他排序方法?

Ray*_*ger 10

如果您的数据已经在Python中,那么Python的排序可能是最快的方式.它使用Timsort算法,该算法在随机数据上表现良好,在部分有序数据上表现良好.

如果您只需要最大的项目,请使用heapq.nlargest.

  • heapq.nlargest和heapq.nsmallest:"后两个函数对n的较小值表现最佳.对于较大的值,使用sorted()函数更有效.而且,当n == 1时,它更有效使用内置的min()和max()函数." (2认同)