Сравнение эффективности различных алгоритмов сортировки массивов
Автор: vika.gol • Май 31, 2019 • Курсовая работа • 2,175 Слов (9 Страниц) • 494 Просмотры
КУРСОВАЯ РОБОТА
из курса «Программирование и анализ вычисления»
тема «Сравнение эффективности различных алгоритмов сортировки массивов»
Задание
Разработать алгоритм и составить программу для сортировки массива случайных чисел тремя методами: «пузыря», «выбора» и «вставки/включений». Проанализировать эффективность различных методов сортировки.
Программа должна иметь следующую структуру:
< Подключение необходимых библиотек>
<Инициализация переменных>
<Цикл по размеру массиве>
<Создание и инициализация массива>
<Вывод исходного массива>
<Копирование исходного массива>
<Сортировка копии массива методом Buble>
<Сортировка копии массива методом Selection>
<Сортировка копии массива методом Insertion>
<Вывод результатов сортировки>
Операции инициализации, вывод, сортировки массива желательно реализовать с помощью функций.
На этапе отладки программы показывать на экране исходный массив и результате итерации. Затем при отображении результатов сортировки отключить этот вывод.
Результаты сортировки различными методами (количество пересылок) нужно вывести в виде таблиц:
Num | Buble | Select | Insert |
Трижды запустить программу. Найти среднее арифметическое число пересылок для каждого размера массива и трех методов сортировки.
На основе полученных данных построить в электронных таблицах Excel графики зависимостей средне арифметического числа пересылок от размера массива для трех методов. По оси абсцисс - значение num, по оси ординат – отношение mov/num.
В отчете отразить:
- постановку задачи;
-блок-схему алгоритма;
- код программы;
- скриншот окна с результатами работы программы;
- таблицу и графики результатам исследования;
- выводы.
- Постановка задачи.
Пусть зададим одномерный массив из произвольных n-элементов, количество которых будет вводиться пользователем с клавиатуры. Необходимо задать копирования массива для его дальнейшего вывода в результаты, и сделать сортировку тремя методами: пузырьковым, выбора и включений.
- Построим блок-схему алгоритма:
Блок-схема алгоритма selectSort
[pic 1]
[pic 2]
[pic 3]
[pic 4]
[pic 5]
[pic 6]
[pic 7]
[pic 8]
[pic 9]
- +
[pic 10][pic 11][pic 12][pic 13]
[pic 14][pic 15]
[pic 16][pic 17][pic 18]
[pic 19]
[pic 20]
[pic 21]
[pic 22]
[pic 23][pic 24][pic 25]
Блок схема алгоритма bubleSort
[pic 26]
[pic 27]
[pic 28]
[pic 29]
[pic 30]
[pic 31]
[pic 32]
[pic 33]
[pic 34]
[pic 35][pic 36]
[pic 37]
[pic 38]
- +
[pic 39][pic 40][pic 41][pic 42]
[pic 43]
[pic 44]
[pic 45]
[pic 46]
[pic 47]
[pic 48]
[pic 49][pic 50]
[pic 51]
[pic 52]
Блок-схема алгоритма insertSort
[pic 53]
[pic 54]
[pic 55]
[pic 56]
[pic 57]
[pic 58]
[pic 59]
[pic 60]
[pic 61][pic 62][pic 63]
-[pic 64][pic 65]
+[pic 66]
...