Какой метод сортировки наиболее подходит для параллельной обработки?
Теперь я смотрю свое старое школьное задание и хочу найти решение вопроса.
Какой метод сортировки наиболее подходит для параллельной обработки?
- Сортировка пузырьков
- Быстрая сортировка
- Объединить сортировку
- Сортировка сортировки
Я думаю, что быстрый способ сортировки (или слияния?) является ответом.
Правильно ли я?
Ответы
Ответ 1
Подобно сортировке слияния, quicksort также может быть легко распараллелизирован из-за своей природы "разделяй и властвуй". Отдельные операции с разделом на месте трудно распараллелить, но после их разделения различные разделы списка можно сортировать параллельно.
Одно из преимуществ параллельной быстрой сортировки по сравнению с другими параллельными алгоритмами сортировки заключается в том, что синхронизация не требуется. Новый поток запускается, как только доступен подписок для его работы, и он не взаимодействует с другими потоками. Когда все потоки завершены, сортировка выполняется.
http://en.wikipedia.org/wiki/Quicksort
Ответ 2
Это полностью зависит от метода распараллеливания. Для многопоточных общих вычислений сортировка слияния обеспечивает довольно надежную балансировку нагрузки и свойства локализации памяти. Для большой сортировочной сети в оборудовании форма Бэтчера, Битоника или Шелл сортировки на самом деле лучше всего, если вы хотите хороший O (log² n) производительность.
Ответ 3
Я думаю, что слияние сортировки
вы можете разделить набор данных и сделать на них параллельные операции.
Ответ 4
Я думаю, что Merge Sort будет лучшим ответом здесь. Поскольку основная идея сортировки слияния заключается в том, чтобы разделить проблему на отдельные решения. Соедините их и объедините их.
То, что мы на самом деле делаем в параллельной обработке. Разделите всю проблему на небольшие единицы, чтобы вычислять параллельно, а затем присоединяться к результатам.
Благодаря
Ответ 5
Это сортировка слияния, так как сортировка выполняется на двух вспомогательных массивах, и они сравниваются и сортируются в конце. это можно сделать параллельно