- •З дисципліни "Структури даних і алгоритми"
- •2 Семестр 2010/2011
- •Дослідження ефективності методів сортування: №1 методу прямої вставки, №4 методу прямого вибору, №3 методу прямого обміну.
- •Технічне завдання на курсову роботу з дисципліни
- •1. Впорядкувати окремо кожен переріз тривимірного масиву а [p,m,n] наскрізно по рядках за незменшенням.
- •1. Алгоритм сортування №1 методу прямої вставки (з лінійним пошуком місця вставки від початку послідовності, що сортується , або «зліва»).
- •2. Алгоритм сортування №4 методу прямого вибору.
- •1 Прохід
- •4 Прохід
- •3. Алгоритм сортування №3 методу прямого обміну (із запам’ятовуванням місця останньої перестановки).
- •2 Прохід
- •7Прохід
- •Зв‘язки між модулями та головною програмою:
- •Опис призначення модулів, процедур та функцій
- •Текст програми
- •Результати:
- •Порівняльний аналіз алгоритмів Характеристика алгоритмів для сортування одновимірного масиву:
- •Порівняльна характеристика алгоритмів при сортуванні одновимірних і двовимірних масивів:
- •Порівняльна характеристика методів сортування багатовимірних масивів між собою:
- •Характеристика впливу різних геометричних розмірів багатовимірних масивів:
- •Список вживаної літератури:
Порівняльна характеристика методів сортування багатовимірних масивів між собою:
Як і для випадку одновимірного масиву, сортування багатовимірного масиву виконується найшвидше алгоритмом прямого обміну №3. Це пояснюється тим, що у випадку вже відсортованого масиву виконуються тільки порівняння елементів, а внутрішні цикли алгоритму не виконуються. Тобто алгоритм виконується лише один раз. Але у випадку не відсортованого масиву та обернено відсортованого — цей метод найповільніший, адже виконується дуже велика кількість перестановок елементів.
Метод сортування прямого вибору дав найкращий результат для не відсортованого та обернено відсортованого масивів. Це відбулось завдяки тому, що кількість обходів масиву зменшується майже вдвоє, а також цей алгоритм має найменшу кількість циклів, тому присвоєнь і порівнянь відбувається значно менше, ніж у інших алгоритмах.
У випадку відсортованого масиву метод сортування прямої вставки показав найгірший результат. Це пояснюється тим, що сортуючи вже впорядкований масив алгоритм виконує велику кількість порівнянь і збільшення індексів, що в результаті забирає багато часу. Але сортуючи невпорядкований та обернено впорядкований масиви алгоритм прямої вставки показав кращі результати, ніж метод прямого обміну. Це відбувається тому, що метод прямого обміну має більшу кількість вкладених циклів, та порівнянь і присвоєнь в них.
Характеристика впливу різних геометричних розмірів багатовимірних масивів:
Зміни геометричних розмірів масиву значно впливають на результати вимірів часу для перших двох алгоритмів – метод прямої вставки №1 і метод прямого вибору №4. При чому, якщо збільшувати кількість перерізів, а розміри перерізу зменшувати, то час сортування значно зменшується, а при збільшенні геометричних розмірів самого перерізу – час сортування значно збільшується. Але використовуючи метод прямого обміну №3, змінюючи геометричні розміри масиву, час сортування значно змінився (зменшився) тільки у випадку збільшення кількості перерізів.
Висновок
Було проведено дослідження трьох алгоритмів: вставка №1, вибір №4, обмін №3. Ми отримали результати, які можна побачити в розділі результати. Метод прямого обміну виявився найкращим для випадку вже відсортованого масиву, але в інших двох випадках він найповільніший. Метод прямого вибору №4 виявився найоптимальнішим для всіх випадків сортування, особливо для обернено впорядкованого масиву цей алгоритм показав найкращий результат. Метод прямої вставки №1 показав непогані результати вимірювання часу — швидше ніж у метод прямого обміну №1 у випадках не відсортованого масиву та обернено відсортованого.
Список вживаної літератури:
1. Марченко А.И «Программирование в среде Turbo Pascal 7.0» Киев «ВЕК+», Санкт-Петербург «КОРОНА-Век», 2007.
2. Конспект.
