Количество сравнений нахождение медианы 7 чисел

Я могу найти медиану с 12 сравнения. Но я хочу знать минимальное количество сравнений и как это сделать.

2 ответов


У Дональда Кнута есть глава "выбор минимального сравнения" в Томе III Искусство программирования.

кнут говорит:" пока не видно никакого общего метода [выбора в минимальном количестве сравнений]", но он дает некоторые общие методы, которые приближаются к минимуму.

глядя на таблицу 5.3.3-1, мы видим, что V₄ (7) = 10 (то есть вы можете найти 4-й по величине из 7 элементов, используя не более 10 сравнений), и алгоритм ("найдено вручную методом проб и ошибок") приводится в решении к упражнению 5.3.3-10.


Если вы позволяете сравнения параллельно (современный процессор, вероятно, сделает это за вас), вы можете использовать сеть сортировки для решения проблемы в шесть шагов.