Я использую Queue Abstract Data Type, который основан на Single Linked List. Я хочу сортировать данные, которые Queue хранит тремя способами: сначала с сортировкой слияния, второй с быстрой сортировкой, третий с сортировкой кучи. Так может ли кто-нибудь помочь в этом?Использование алгоритмов сортировки в очереди?
ответ
Обычно очередь сортируется по порядку вставки - элементы сортируются по порядку, в который они были вставлены в очередь. Похоже, вы хотите нарушить необходимое качество очереди.
Я только собираюсь покрыть сортировку слияния с этим ответом. Надеемся, что другие будут охватывать другие алгоритмы, или вы можете сами их вывести.
Один связанный список можно рассматривать как список списков, просто зная, когда заканчивается один список, а другой начинается. Для сортировки слияния вам нужно начать с отсортированных списков - если каждый список имеет длину 1, он сортируется просто потому, что другой порядок невозможен. Слияние двух связанных списков в одно легко - вы берете наименьший элемент из каждого из двух списков и связываете его с новым списком, пока оба списка не будут исчерпаны. Итак, для первого прохода вы разбиваете список на подсписные буквы длины 1 и объединяете их в подсписках длины 2. Второй проход вы объединяете подсписные буквы длины 2 в подсписные буквы длины 4. Каждый проход удваивает размер отсортированных подписок , Вы закончили, когда размер отсортированного подсписок больше или равен размеру всего вашего списка.
- 1. std :: использование памяти алгоритмов сортировки
- 2. Arrays.sort() против алгоритмов сортировки
- 3. Анализ алгоритмов сортировки вложений
- 4. Графические сравнения алгоритмов сортировки
- 5. Сравнение алгоритмов сортировки
- 6. Длительность алгоритмов сортировки C++
- 7. Визуализация алгоритмов сортировки
- 8. Эффективность алгоритмов сортировки
- 9. Способ улучшения алгоритмов сортировки?
- 10. сравнение алгоритмов сортировки
- 11. Общее сравнение алгоритмов сортировки для полного сортировки
- 12. Функция сортировки в очереди
- 13. Иллюстрация алгоритмов сортировки по википедии?
- 14. Путаница об эффективности алгоритмов сортировки
- 15. Программы для тестовых алгоритмов сортировки
- 16. Производительность алгоритмов сортировки записей списка в карте
- 17. Разница в пространстве Сложность различных алгоритмов сортировки
- 18. очереди сортировки функция сортирует к неправильному очереди
- 19. Использование алгоритмов в научных статьях
- 20. Алгоритм параллельной сортировки CUDA против алгоритмов сортировки одиночных потоков
- 21. Сортировка алгоритмов с использованием методов сортировки
- 22. программное обеспечение для сортировки алгоритмов анимация
- 23. Добавление алгоритмов сортировки Java со случайным массивом
- 24. Хорошая анимационная библиотека для визуализации алгоритмов сортировки
- 25. Использование очереди в C#?
- 26. Сортировка алгоритмов для новичков
- 27. В чем смысл «стабильного» и «неустойчивого» для различных алгоритмов сортировки?
- 28. Проекты C++ в зависимости от алгоритмов сортировки и поиска
- 29. Эффективные реализации алгоритмов поиска и сортировки в Java
- 30. Что означает патологический ввод в отношении алгоритмов сортировки?
Что вам нужно, в частности, вам нужна помощь? –
@OliCharlesworth Не знаю, где в очереди или где деактивировать мои алгоритмы сортировки. – noDispName
Один простой способ сделать это - сбросить очередь в обычный массив, выполнить сортировку по массиву и затем перенести все обратно в очередь. –