Quivort Pivote Выбор - PullRequest
       3

Quivort Pivote Выбор

1 голос
/ 27 июня 2011

Я читал, что опорная точка может быть медианой из 3 чисел: снизу, по центру и сверху.Но может ли это вызвать переполнение?Что произойдет, если медиана вернет значение, превышающее размер массива?Я предполагаю, что этот выбор сделан, предполагая, что их значения массива не могут быть длиннее, чем размер массива.Я думаю, что смущен тем, что на самом деле является опорой.

1 Ответ

3 голосов
/ 27 июня 2011

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

ОБНОВЛЕНИЕ: Некоторые чтения информируют меня о том, что лучше выбрать сводную точку, чтобы выбрать медиану из 3 значений в массиве (например,как среднее, нижнее и верхнее или 3 случайных положения).Некоторые люди рекомендуют брать медиану из 5 значений.Производительность быстрой сортировки в наихудшем случае возникает, когда опорная точка близка к наименьшему или наибольшему значению в массиве, и эта тактика предназначена для защиты от этого.Это просто оптимизация для определенных видов данных - это не является необходимостью.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...