Читать практическое задание по информационному обеспечению, программированию: "Сортировка методом подсчета" Страница 1


  • 1

назад (Назад)скачать (Cкачать работу)

Функция "чтения" служит для ознакомления с работой. Разметка, таблицы и картинки документа могут отображаться неверно или не в полном объёме!

Федеральное бюджетное государственное образовательное учреждение

Высшего профессионального образования

Кафедра автоматизированных систем управленияОтчет к лабораторной работе

Сортировка методом подсчетаРуководитель: Бакусова Наталья Сергеевна

Разработал: Давлетов Даниил Альбертович

Уфа, 2015

Содержание

Постановка задачи

Математическая модель

Текст программы

Руководство пользователя

Заключение

Список литературы

Постановка задачи Целью работы является изучить методы сортировок. В результате работы должна быть написана программа, которая сортирует массив данных различного типа методом подсчета.

Математическая модель

Сортировка подсчётом - алгоритм сортировки, в котором используется диапазон чисел сортируемого массива (списка) для подсчёта совпадающих элементов.

Алгоритм сортировки состоит из следующих шагов:

) Просмотр исходного массива и подсчет количества элементов в этом массиве (количество сохраняется во вспомогательном массиве);

2) Просмотр вспомогательного массива и запись элементов в отсортированном порядке.

Идея сортировки заключается в том, что необходимо посчитать количество элементов в исходном массиве и дальше записать их в отсортированном порядке посчитанное число раз.

Свойства сортировки:

) Не является сортировкой сравнением: ни одна пара элементов не сравнивается друг с другом.

2) Требует дополнительную память под массив-счетчик.

Модификации сортировки подсчетом:

) Если известно, что в исходном массиве минимальный элемент равен - Min, а максимальный - Max, то вспомогательного массив достаточно создавать размером - Max-Min+1.

2) С помощью сортировки подсчетом можно сортировать знаковые типы. Например, при сортировке - signed char, принимающего значения от - 128 до 127, индексу - 0 во вспомогательном массиве будет соответствовать значение - 128, индексу - 1 - 127, …, индексу 255 - 127. Алгоритмическая модель

Текст программы

#include

#include

#include

#include namespace std;Menu ();ForIntegerFromMinToMax ();ForIntegerFromMaxToMin ();ForSymbolsFromMinToMax ();ForSymbolsFromMaxToMin ();Exit ();main () {(1251);(1251);(*f [6]) () = {Menu, ForIntegerFromMinToMax, ForIntegerFromMaxToMin, ForSymbolsFromMinToMax, ForSymbolsFromMaxToMin, Exit};

int choice; // переменная для выбора пункта меню("_____\nМеню. \n1: Текст задачи\n");("2: Сортировка подсчетом для целых чисел (от меньшего к большему) \n");("3: Сортировка подсчетом для целых чисел (от большего к меньшему) \n");("4: Сортировка подсчетом для букв (по алфавиту) \n");("5: Сортировка подсчетом для букв (в обратном порядке) \n");("6: Выход\n_____\n");("\nВведите число от 1 до 6 включительно, выбрав пункт меню: ");

for (;;) {(scanf ("%d", &choice) ==0) {

printf ("\n\n\aОшибка! Неправильный тип данных. \nПожалуйста, введите число от 1 до 6 включительно: ");

fflush (stdin);

}break;

}(;;) {(choice>0 && choice


  • 1

Интересная статья: Основы написания курсовой работы