Комбинаторные алгоритмы для программистов

          

Распределяющая сортировка


Обсуждаемый здесь алгоритм сортировки отличается от рассматривавшихся до сих пор тем, что он основан не на сравнениях между именами, а на представлении имен. Мы полагаем, что каждое из имен

Распределяющая сортировка
имеет вид

Распределяющая сортировка

и их нужно отсортировать в возрастающем лексикографическом порядке, то есть

Распределяющая сортировка

тогда и только тогда, если для некоторого

Распределяющая сортировка

имеем

Распределяющая сортировка
для
Распределяющая сортировка
и
Распределяющая сортировка
. Для простоты будем считать, что
Распределяющая сортировка
, и поэтому имена можно рассматривать как целые, представленные по основанию
Распределяющая сортировка
, так что каждое имя имеет
Распределяющая сортировка
Распределяющая сортировка
-ичных цифр. Более короткие имена дополняются нулями.



Содержание раздела