Вопрос про Quicksort / Быстрая сортировка

246
16 сентября 2018, 23:30

Что делать если необходимо отсортировать массив, например 6 5 2 9 1 3 7 4 используя в качестве опорного элемента, именно средний элемент. В моем случае 9 либо 1. Я не имею ввиду выбор медианы 3 элементов. Дело в том что выходит что 9 наибольшее значение, а 1 наименьшее. Не пойму как быть с опорным элементом в этом случае. Как быть ? Спасибо.

Answer 1

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

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

READ ALSO
Spring Scheduling Как извлечь обьект?

Spring Scheduling Как извлечь обьект?

Есть класс, который по шедулеру наполняет коллекцию определенными обьектами

259
Java подключиться к прокси

Java подключиться к прокси

Как подключиться к прокси в Java? Мне нужно, чтобы программа меняла внешний IP компьютераВ интернете куча статей по подключению по URL через прокси,...

250
Как сделать spinner без выпадающего меню в android?

Как сделать spinner без выпадающего меню в android?

Мне нужно сделать spinner без выпадающего меню, как здесь:

231
Как удалять по одной строке?

Как удалять по одной строке?

Метод erase(), который должен удалять одну верхнюю строчку текста в секунду в поле textArea (JavaFX)

210