Действует ли алгоритм сортировки по ведру?
Действует ли алгоритм сортировки по ведру?

Видео: Действует ли алгоритм сортировки по ведру?

Видео: Действует ли алгоритм сортировки по ведру?
Видео: Сортировка Шелла! Рекомендую тебе понять ее! Алгоритм прост и эффективен! 2024, Май
Anonim

Нет, это не в- место сортировка алгоритм . Вся идея в том, что ввод сортирует самих себя, поскольку они перемещаются в ведра . В худшем из хороших случаев (последовательные значения, но без повторения) необходимое дополнительное пространство не меньше размера исходного массива.

Таким образом, какие алгоритмы сортировки используются?

В качестве другого примера, многие алгоритмы сортировки упорядочивают массивы в отсортированном порядке на месте, в том числе: пузырьковая сортировка , гребенчатая сортировка, выборочная сортировка, вставка сортировки , heapsort и Shell сортировка. Для этих алгоритмов требуется всего несколько указателей, поэтому их пространственная сложность равна O (log n). Quicksort работает с данными, которые нужно отсортировать.

Следовательно, возникает вопрос, как работает алгоритм сортировки по ведру? Ковшовая сортировка , или сортировка по корзине , это алгоритм сортировки что работает путем распределения элементов массива на несколько ведра . Каждый ведро затем отсортированный индивидуально, либо используя другой алгоритм сортировки , или рекурсивно применяя алгоритм сортировки ведра . Настройте массив из изначально пустых " ведра ".

Соответственно, как реализовать алгоритм сортировки по ведру?

  1. Предположим, входной массив: Создайте массив размером 10.
  2. Вставьте элементы в корзины из массива. Элементы вставляются в соответствии с диапазоном ковша.
  3. Элементы каждой корзины сортируются с использованием любого из стабильных алгоритмов сортировки.
  4. Собраны элементы из каждого ведра.

Где используется сортировка по ведру?

Ковшовая сортировка в основном полезен, когда входные данные равномерно распределены по диапазону. Например, рассмотрим следующую проблему. Сортировать большой набор чисел с плавающей запятой, которые находятся в диапазоне от 0,0 до 1,0 и равномерно распределены по диапазону.

Рекомендуемые: