Сортировка перестановками :: PermSort

Из числа крайне медленных сортировок. Не имеет практической пользы, однако представляет чисто академический интерес, как пример неэффективного алгоритма.

Алгоритм

Если подойти к сортировке как к комбинаторной задаче, то массив можно рассматривать как обычное конечное множество из n элементов, для которого существует n! перестановок. Некоторые из этих перестановок – массив в упорядоченном состоянии. Перебираем все возможные перестановки, пока не встретим ту, которая представляет из себя отсортированный массив.

Характеристики алгоритма

НазваниеСортировка перестановками (Perm sort, Permulation sort)
КлассСортировки обменами
УстойчивостьНеустойчивая
СравненияНет
Сложность по времениХудшаяO(n x n!)
СредняяO(n x n!)
ЛучшаяO(n)
Сложность по памятиОбщаяO(n)
ДополнительнаяO(1)

Ссылки

Непрактичные сортировки – бессмысленные и беспощадные

Реализация на различных ЯП