Как следует из названия, является ли сортировка по основанию единственным алгоритмом сортировки без сравнения? Я предполагаю, что да.
Является ли сортировка по основанию единственным алгоритмом сортировки без сравнения?
comment
Что вы подразумеваете под несравнением? Все виды должны сравнивать что-то, если только у вас не более одного элемента в корзине.
- person David R Tribble   schedule 13.05.2011
comment
@Loadmaster: название немного вводит в заблуждение - оно означает сортировку, которая не сравнивает элементы атомарно.
- person reavowed   schedule 13.05.2011
comment
Сортировка спагетти (при наличии подходящего оборудования)...
- person Steve Jessop   schedule 13.05.2011
comment
Я думаю, что сортировка по сну также не будет считаться сравнительной ...
- person Patrick Roberts   schedule 03.09.2016
Ответы (2)
Нет, среди прочего, есть сортировка по счету и сортировка по ведру. Дополнительную информацию см. в статье Википедии.
person
reavowed
schedule
12.05.2011
Любой набор можно отсортировать, не используя сравнения.
Процесс
- определите управляемый размер входного домена M, который вы можете обрабатывать для записи в управляемом массиве. Для символов (8-бит) домен будет 0-255.
- разделите ввод в некотором упорядоченном виде на массив.
- повторить и промыть, если входные данные еще не учтены полностью, т. е. не учтены все биты в M.
Например, 32-битная сортировка M, целое число может быть выполнена следующим образом:
- посмотрите на первые 8 бит, поместите (ссылки, указатели или то, что доступно в вашем языке) в 8-битном диапазоне. поместите их в массив [0-255], теперь у вас есть грубый (приблизительный) порядок ваших значений.
- посмотрите на следующие 8 бит, поместите их в аналогичный массив, сохраните ссылку на первый порядок. Следующие 8x2 бита обрабатываются таким же образом. Для извлечения вы переходите по ссылкам из первого набора.
Сортировка по основанию использует цифры и имеет 2 варианта: (от MSB до LSB) и (от LSB до MSB).
Сортировка подсчетом использует только первый шаг
Сортировка ведра обычно упоминается, когда речь идет о сочетании сортировки подсчета и сортировки сравнения.
Интересно, что для многих случаев использования сравнительная сортировка оказывается неэффективной.
person
Captain Giraffe
schedule
12.05.2011