Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Руководство программиста





Описание структуры программы

Exp.exe

Исходный код программы состоит из двух модулей:

· Exp.c содержит алгоритмы ввода и вывода информации на экран, генерации случайных чисел, генерации массива с учетом заданных пользователем параметров.

· Sorts.c содержит алгоритмы сортировок пузырьком и слиянием, а так же функцию сравнения двух переменных типа float, необходимую для работу стандартной функции qsort.

Tests.exe

Исходный код программы состоит из модуля Tests.cpp, содержащего алгоритмы ввода и вывода информации и алгоритм серийного запуска программы Exp.exe.

Описание структур данных

Exp.exe

1. int num – количество элементов в сортируемом массиве.

2. int seed – инициализатор генератора случайных чисел.

3. int stype – номер алгоритма сортировки:

· 1 – qsort;

· 2 – сортировка пузырьком;

· 3 – сортировка слиянием.

4. float* arr – сортируемый динамический массив.

5. int i – переменная циклов.

6. LARGE_INTEGER freq, sQP, fQP – переменные, используемые для замера времени сортировки.

Tests.exe

1. int innum, ternum – начальное и конечное количество элементов в сортируемом массиве.

2. int step – шаг (число, на которое увеличивается количество элементов);

3. int seed – инициализатор генератора случайных чисел.

4. int stype – номер алгоритма сортировки:

· 1 – qsort;

· 2 – сортировка пузырьком;

· 3 – сортировка слиянием.

5. char *app – название программы для серийного эксперимента.

6. FILE* fTime, fElem – переменные для работы с файлами.

 

Описание алгоритмов

Сортировка пузырьком

Алгоритм состоит из повторяющихся проходов по сортируемому массиву. За каждый проход элементы последовательно сравниваются попарно и, если порядок в паре неверный, выполняется обмен элементов. Проходы по массиву повторяются N-1 раз. При каждом проходе алгоритма по внутреннему циклу, очередной наибольший элемент массива ставится на своё место в конце массива рядом с предыдущим наибольшим элементом, а наименьший элемент перемещается на одну позицию к началу массива.

Реализация алгоритма представлена в приложении 1.

Сортировка слиянием

1. Массив разбивается напополам до тех пор, пока все подмассивы не будут состоять из одного элемента.

2. Получившиеся в результате последнего разбиения два отсортированных массивы «сливаются» в один отсортированный (выбором меньшего из двух элементов).

3. Процедура слияния повторяется для всех совершенных разбиений.

Реализация алгоритма представлена в приложении 2.


Результаты экспериментов







Дата добавления: 2015-06-15; просмотров: 350. Нарушение авторских прав; Мы поможем в написании вашей работы!




Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

Понятие о синдроме нарушения бронхиальной проходимости и его клинические проявления Синдром нарушения бронхиальной проходимости (бронхообструктивный синдром) – это патологическое состояние...

Опухоли яичников в детском и подростковом возрасте Опухоли яичников занимают первое место в структуре опухолей половой системы у девочек и встречаются в возрасте 10 – 16 лет и в период полового созревания...

Способы тактических действий при проведении специальных операций Специальные операции проводятся с применением следующих основных тактических способов действий: охрана...

Билиодигестивные анастомозы Показания для наложения билиодигестивных анастомозов: 1. нарушения проходимости терминального отдела холедоха при доброкачественной патологии (стенозы и стриктуры холедоха) 2. опухоли большого дуоденального сосочка...

Сосудистый шов (ручной Карреля, механический шов). Операции при ранениях крупных сосудов 1912 г., Каррель – впервые предложил методику сосудистого шва. Сосудистый шов применяется для восстановления магистрального кровотока при лечении...

Трамадол (Маброн, Плазадол, Трамал, Трамалин) Групповая принадлежность · Наркотический анальгетик со смешанным механизмом действия, агонист опиоидных рецепторов...

Studopedia.info - Студопедия - 2014-2025 год . (0.01 сек.) русская версия | украинская версия