Остання редакція: 2026-01-28
Анотація
У роботі розглянуто розробку та дослідження ефективності паралельного алгоритму сортування масивів даних на основі тришляхового алгоритму злиття 3-way Merge Sort. Проаналізовано особливості послідовних та паралельних методів сортування, проведено огляд відомих підходів до розпаралелювання рекурсивних алгоритмів, а також обґрунтовано вибір засобів програмної реалізації. У роботі розроблено програмний модуль на мові програмування C#, створено та описано алгоритмічну структуру сортування, реалізовано механізм адаптивного переходу між послідовним та паралельним виконанням на основі порогового значення. Проведено тестування швидкодії, побудовано графіки порівняння часу виконання паралельного і послідовного сортування. Реалізація програмного модуля дозволяє підвищити продуктивність опрацювання великих обсягів даних за рахунок ефективного використання багатопотоковості. Одержані результати можуть бути використані в системах обробки даних, високопродуктивних програмних комплексах та навчальних проектах, що вимагають оптимізації алгоритмів сортування.
Ключові слова
Посилання
1.Кормен Т., Лейзерсон Ч., Рівест Р., Штайн К. Алгоритми: побудова і аналіз: Пер. з англ. Київ: ВСВ «Мегатайп», 2017. 1296 с.
2.Седжвік Р., Вейн К. Алгоритми. Повний курс. 4-те вид. Київ: Видавнича група КМ-БУКС, 2020. 1056 с.
3.Таненбаум Е., Остін Т. Архітектура комп’ютера. Київ: Вілліамс, 2014. 752 с.
4.Дейтел П., Дейтел Х. C# для програмістів. Київ: Вільямс, 2015. 1200 с.
5.Sutter H. фундаментальний перехід до паралелізму в програмному забезпеченні [пер. назви укр.] // Dr. Dobb’s Journal, 2005.
6.McCool M., Reinders J., Robison A. Структуроване паралельне програмування: шаблони для ефективних обчислень [пер. назви укр.]. Morgan Kaufmann, 2012. — 320 p.
7.Gonzalez T. Довідник з апроксимаційних алгоритмів і метаевристик [пер. назви укр.]. Chapman & Hall/CRC, 2007. 1432 p.
8.Microsoft. Task Parallel Library (TPL) Documentation. Microsoft Docs. URL: https://learn.microsoft.com/dotnet/standard/parallel-programming/