Точное количество сравнений для вычисления медианы


25

Том III книги Кнута « Искусство компьютерного программирования» (глава 5, стих 3.2) включает в себя следующую таблицу, в которой перечислено точное минимальное количество сравнений, необходимых для выбора наименьшего элемента T из несортированного набора размера N для всех 1TN10 . Эта таблица вместе с известными выражениями в замкнутой форме В1(N)знак равноN-1 и В2(N)знак равноN-2+N/2 , представляетбольшуючасть современного уровня техникис 1976 года.

Таблица от Кнута III: 5.3.2

Были ли рассчитаны более точные значения ВT(N) за последние 36 лет? Меня особенно интересуют точные значения M(N)знак равноВN/2(N) , минимального количества сравнений, необходимых для вычисления медианы.


Как указывает @ MarkusBläser, таблица Кнута, похоже, уже включает более поздние результаты Билла Гасарча, Уэйна Келли и Билла Пью ( Нахождение i-го наибольшего из n для малых i, n . SIGACT News 27 (2): 88-96, 1996 .)


2
Я думаю, что самой известной статьей на эту тему является работа Пратта и Яо (1976), которой приписывают то, что они одними из первых нашли некую (состязательную) технику для доказательства нижних границ этой проблемы. Если бы я нашел последние статьи по этому вопросу, я бы следовал цитатам, сделанным в этой статье . Самая свежая статья - «Дор и Цвик», но есть также опрос Патерсона, проведенный в 1996 году (хотя я не смотрел, касается ли он точных результатов или нет).
Джереми

1
Nitpicking: В последнем предложении вопроса вы, вероятно, имели в виду потолок, а не пол.
Цуёси Ито

6
Джефф, любопытно, почему вы заинтересованы в точном ответе.
Чандра Чекури,

5
Вя(N)

5
@ChandraChekuri: я играю с вариантами алгоритма линейного выбора времени Блюма-Флойда-Пратта-Ривеста-Тарьяна , как потенциальную проблему домашней задачи алгоритмов. Если мы используем алгоритм сравнения минимума, чтобы найти медиану в каждом блоке, то какой размер блока дает нам лучшую константу в большом-Oh? 9 лучше чем 7 лучше чем 5; а как насчет 11?
Джефф

Ответы:


17

Nзнак равно15

Оценки Кеннета Оксанена для выбора

Спасибо @ MarkusBläser за лидерство!


3

Интересно, может ли эта информация быть полезной для вас? К сожалению, он не предоставляет никакой дополнительной информации к вопросу этого поста, но скорее отвечает на ваш комментарий о том, для чего это было сделано (анализ вариантов QuickSelect).

v(N,T)vT(N)

vT(N)знак равноN+мин(T,N-T)+много,

Этот результат нередко используется и, в частности, является основой для алгоритмов «Адаптивная выборка для быстрого выбора» Мартинеса, Панарио и Виолы . Отправной точкой статьи является QuickSelect медиана-три, а затем спросить: уместно ли систематически выбирать медиану, когда искомый элемент имеет относительный ранг, намного меньший, чем n / 2, или намного выше, чем n / 2? ?

КNмм/2αмαзнак равноК/Nм

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.