Подтвердить что ты не робот

Какой алгоритм использует python sorted()?

Возможный дубликат:
О встроенном в sort() методе python

Имя говорит все.

Я пытаюсь объяснить кому-то, почему они должны использовать Python builtin sorted() вместо того, чтобы пересказывать свои собственные, и я понял, что понятия не имею, какой алгоритм он использует.

Если это имеет значение, мы говорим о python 2.7

4b9b3361

Ответ 1

Python использует алгоритм под названием Timsort:

Timsort - это гибридный алгоритм сортировки, полученный из сортировки слияния и вставка сортировка, призванная хорошо работать на многих видах реального мира данные. Он был изобретен Тимом Петерсом в 2002 году для использования в Python язык программирования. Алгоритм находит подмножества данных, которые являются уже упорядочен и использует подмножества для сортировки данных больше эффективно. Это делается путем слияния идентифицированного подмножества, называемого выполняются с существующими прогонами до тех пор, пока не будут выполнены определенные критерии. Timsort был стандартным алгоритмом сортировки Python с версии 2.3. это теперь также используется для сортировки массивов в Java SE 7 и на Android платформы.

Ответ 2

Алгоритм сортировки называется Timsort. См. timsort