Предмет: Программирование. Добавлен: 04.03.2022. Год: 2022. Страниц: 23. Оригинальность по antiplagiat.ru: < 30% |
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ ФГБОУ ВО «ТУВИНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ» КАФЕДРА ИНФОРМАТИКИ КУРСОВАЯ РАБОТА Алгоритмы поиска (обучающая программа) Выполнила: студентка 2-го курса ФИТ_308 группы ФМФ 02.03.02 «Фундаментальная информатика и информационные технологии» Кызыл – 2020 Содержание Введение ... ... 3 Глава I. Теоретическая часть ……… ………. 4 1.1 Алгоритмы поиска 5 1.3 Алгоритмическая сложность 8 Глава II. Обучающе-контролирую ая программа ………. ..……….… 14 2.1 Структура программы 14 2.2 Содержание теста……… ………... 19 Заключение …... ... 22 Список использованных источников и литературы …... ... 23 ? Введение Современная методология программирования предполагает, что выбор структур данных и запись алгоритма на языке программирования важны и заслуживают одинакового внимания. Решение о том, как представлять данные, невозможно принимать без понимания того, какие алгоритмы будут к ним применяться, и наоборот, выбор алгоритма зависит от строения данных, к которым он применяется. Существует множество подходов при решении задач на ЭВМ. В случае решения простых задач выбор подхода не имеет особого значения. При решении сложных задач требуются методы, при которых время или память используются с максимальной эффективностью. Изучение алгоритмов необходимо для обеспечения экономии ресурсов. В программных приложениях, обрабатывающих миллионы объектов, оказывается возможным ускорить работу программы в миллионы раз, используя хорошо разработанный алгоритм. Вложение дополнительных денежных средств или времени для приобретения и установки нового компьютера позволяет ускорить работу программы в 10-100 раз. Тщательно разработанный алгоритм – эффективная часть процесса решения сложной задачи в любой области применения. Цель курсовой работы – изучить литературу по данной теме и создать обучающе-контролирую ую программу. Задачи курсовой работы: 1. Изучить литературу (термины) по теме исследования для написания программного продукта и отобрать содержание теоретического материала; 2. Создать обучающе-контролирую ую программу на языке C# с помощью среды программирования Visual Studio, которая состоит из теоретического материала и тестирующей части по теме курсовой работы. Теоретическая значимость исследования – разработанная программа будет способствовать студентам эффективному изучению данной темы. Практическая значимость – обучающе-контролирую ая программа может быть использована: • Для самостоятельного ознакомления учащихся с данной темой; • Учителями для контроля знаний учащихся по данной теме (тест). ? Глава 1. Теоретическая часть 1.1 Алгоритмы поиска Поиск имеет разную сложность: если массив упорядочен и если нет. Это связано прежде всего с тем, что об упорядоченном массиве a priori больше информации. 1. Линейный поиск Имеется массив aa размера nn (индексация с 1), требуется найти элемент массива равный PP. Алгоритм: 1. Установить k:=1k:=1 2. Если kn, перейти к шагу 3, иначе алгоритм завершён неудачно 3. Если ak=Pak=P, вывести kk, алгоритм завершён удачно 4. Иначе, если kn, k:=k+1,k:=k+1, перейти к шагу 2 Блок-схема алгоритма Поскольку алгоритм проходит в худшем случае весь массив, сложность O(n)O(n) операций сравнения. 2. Поиск минимального элемента. Имеется массив aa размера nn (индексация с 1), требуется найти минимальный элемент. Алгоритм: 1. Установить k:=1k:=1, ?:=a1 2. Если kn, перейти к шагу 3, иначе, вывести ??, алгоритм завершён 3. k:=k+1, 4. Если ak?, ?:=ak 5. перейти к шагу 2 Блок-схема алгоритма Сложность алгоритма O(n) 3. Бинарный поиск в упорядоченном массиве. В случае если массив упорядочен (скажем, по возрастанию), линейный поиск неэффективен: действительно, сравнив “средний” элемент массива мы можем сразу отсечь половину значений. Имеется упорядоченный по возрастанию массив aa размера nn (индексация с 1), найти индекс элемента равного PP... ? Заключение Поставленная цель курсовой работы достигнута – создана обучающе-контролирую ая программа. Поставленные задачи решены: 1. Изучена литература по теме исследования для написания программного продукта 2. Создана обучающе-контролирую ую программа на языке C# с помощью среды программирования Visual Studio, которая состоит из теоретического материала и тестирующей части по теме курсовой работы. Теоретический материал подобран из сайтов и учебников по информатике. Список использованных источников и литературы 1. Дасгупа С. Алгоритмы терминов / С. Дасгупта, Х. Пападимитриу, У. Вазирани. - Москва : МЦНМО, 2014 –– 320 с. 2. Алгоритмическая сложность. Алгоритмы поиска. Алгоритмы сортировки. – Текст: электронный // wiki.livid.pp.ru: [сайт]. – URL: students/cs/lectures/ .html 3. Коварцев А. Н. Алгоритмы и анализ сложности / А.Н. Коварцев, А.Н. Даниленко. – Самара: Изд-во Самарского университета, 2018 – 128 с. 4. Курс лекций | Алгоритмы и анализ сложности – [Электронный ресурс]- bitstream/Uchebnye-iz aniya/Algoritmy-i-an liz-slozhnosti-(дата обращения – 25.04.2020 год) |
Перейти к полному тексту работы |