Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Кафедра программного обеспечения ВТ и АС↑ Стр 1 из 2Следующая ⇒ Содержание книги
Похожие статьи вашей тематики
Поиск на нашем сайте
Российской федерации ФГБОУ ВПО «Дагестанский Государственный Технический Университет» Факультет КТВТиЭ
Кафедра программного обеспечения ВТ и АС
Методические указания к выполнению курсовой работы по дисциплине
«Алгоритмы и структуры данных»
для студентов направления подготовки бакалавров 231000.62 – «Программная инженерия»
Махачкала - 2014г. УДК 517.11
Методические указания к выполнению курсовой работы по дисциплине «Алгоритмы и структуры данных» для студентов направления подготовки бакалавров 231000.62 – «Программная инженерия». Махачкала, ДГТУ, 2014. –14с. Методические указания предназначены для использования при выполнении курсовой работы по дисциплине «Алгоритмы и структуры данных». Сформулированы цели и задачи, содержание и порядок выполнения проекта, приводится пример оформления проекта.
Составитель: Сулейманова О.Ш., старший преподаватель кафедры ПОВТиАС Шахпазова И.Ф., к.ф.-м.н., старший преподаватель кафедры ПОВТиАС Рецензенты: Исабекова Т.И., к.ф.-м.н., доцент, зав. кафедры ПМиИ, Кобзаренко Д.Н., д.т.н., зав.лаборатории информационных технологий в энергетике ФГБУН «Института проблем геотермии ДНЦ РАН»
Печатается по постановлению Ученого совета Дагестанского Государственного Технического университета
Оглавление
Цель выполнения курсовой работы.. 4 Теоретические сведения. 4 Порядок выполнения работы.. 6 Требования к функциональным характеристикам. 9 Требования к оформлению пояснительной записки. 10 Тематика курсовых работ. 11 Список рекомендуемой литературы.. 12 Приложение. Образец формы титульного листа курсовой работы.. 13
Цель выполнения курсовой работы
Основной целью выполнения курсовой работы является научиться описывать предметную область реального мира - объект и его атрибуты. Закрепить навыки использования основных структур данных, способов их описания и основных операций над ними. Освоить разработку удобного пользовательского интерфейса. Проектируемое приложение курсовой работы предназначено для формализации и анализа качества алгоритмов решения задачи. Основная учебная цель выполнения разработки – повышение уровня квалификации разработчика в области проектирования, программной реализации и анализа сложных структур данных и алгоритмов их обработки. Основные задачи, решаемые разработчиком в процессе выполнения курсовой работы: - программная реализация задачи; - разработка программы для оценки качества реализованного алгоритма; - проведение экспериментального исследования алгоритма и анализ его результатов; - документирование курсовой работы в соответствии с установленными требованиями.
Теоретические сведения
Непрерывная и дискретная информация Информация о различных природных явлениях и технологических процессах воспринимается человеком (с помощью органов чувств и измерительных приборов) в виде тех или иных полей. Математически такие поля представляются с помощью функций Y = f(x,t), (1) где t - время, x - точка, в которой измеряется поле, у - величина поля в этой точке. В большинстве случаев все скалярные величины, входящие в формулу (1), могут принимать непрерывный ряд значений, измеряемых вещественными числами (т.е. могут изменяться сколь угодно мелкими шагами). Поэтому информацию, представляемую таким способом, принято называть непрерывной информацией (или аналоговой). Если же установить минимальные шаги изменения всех скалярных величин, входящих в формулу (1), то получим так называемое дискретное представление информации или дискретную информацию. Это вполне оправданный подход, т.к. точность измерений, как и человеческого восприятия, всегда ограничена. Т.е. даже непрерывную информацию мы всегда воспринимаем в дискретном виде. Но любая непрерывная информация может быть аппроксимирована дискретной информацией с любой степенью точности, поэтому дискретная форма представления информации - универсальна. Результаты измерения любых скалярных величин представляются, в конце концов, в виде числа с конечным набором цифр (при заданной точности измерений). Поэтому дискретную информацию часто отождествляют с цифровой информацией. Данные и ЭВМ Обработка цифровой информации должна обеспечивать решение задач, связанных с реальным миром. Однако бесконечное множество объектов и связей между ними, составляющих наш мир, не может быть представлено в ограниченном объеме памяти любой машины, какой бы большой она ни была. Следовательно, необходимо построить некую ограниченную масштабную модель реального мира, которая учитывала бы только те данные или информацию и связи между объектами, которые касаются именно рассматриваемой проблемы. Такая модель обычно имеет два уровня. Первый уровень является результатом абстракции и задает упрощенную логическую структуру данных. Второй уровень определяет преобразование этой структуры в физическую структуру данных, которая может быть непосредственно отображена в памяти машины и обработана с помощью программного обеспечения. Структура данных - это набор правил и ограничений, которые показывают связи между отдельными элементами данных или группами данных. Она ничего не говорит об отдельных элементах данных, и любая информация о них является излишней при условии, что связи между ними установлены. Если некоторые данные в структуре сами являются структурами данных, то образуется некая иерархия структур данных. Объекты предметной области При решении конкретных проблем обычно ограничиваются той частью реального мира, которая является областью данной деятельности. Ее называют предметной областью (ПО). Для решения проблем деятельности нужна информационная модель ПО - описание структур данных на логическом уровне. Проектируя модель ПО, обычно связывают структуры данных с объектами ПО. Объектами могут быть: • люди, например, перечисленные в платежной ведомости; • предметы, например, детали; • построения, например, счета в задаче получения счетов. Объект - это некая абстракция, которой можно дать уникальное и осмысленное имя. Оно отделяет конкретный объект от других подобных абстракций. Например, в ПО ВУЗ существует объект СТУДЕНТ - лицо, проходящее обучение в ВУЗе. В той же ПО существует объект ПРЕПОДАВАТЕЛЬ - лицо, обучающее СТУДЕНТов. Таким образом, объект есть тип, множество экземпляров, обладающих (в моделируемой ПО) сходными свойствами. Так, конкретный Иванов Виктор Леонидович является экземпляром объекта СТУДЕНТ. Каждый объект обладает вполне определенным уникальным набором свойств. Эти свойства называются атрибутами. Атрибуты, как и объекты, имеют осмысленные имена. Так, атрибутами объекта СТУДЕНТ могут быть Фамилия, Имя, Отчество, Дата рождения, Номер студбилета, а атрибутами объекта ПРЕПОДАВАТЕЛЬ - Фамилия, Имя, Отчество, Дата рождения, Ученая степень,...Отметьте, что наборы атрибутов различных объектов могут пересекаться, но не могут совпадать. Таким образом, можно понимать объект как некоторый набор атрибутов. Набор атрибутов должен быть достаточным для описания объекта в данной предметной области и не должен содержать избыточных атрибутов. Экземпляр объекта описывается конкретным набором значений атрибутов. Например, совокупность значений "Иванов", "Виктор", "Леонидович", "17.05.79", "9443625",... является описанием экземпляра объекта СТУДЕНТ. Такие совокупности называются кортежами. Поскольку кортеж соответствует экземпляру объекта, можно трактовать объект как множество кортежей.
Представление информации об объектах Для любого объекта существует некоторая совокупность информации, которую можно назвать записью. Отдельные атрибуты образуют поля записи. Совокупность записей об объектах называют набором данных или файлом. С точки зрения программиста объекту ПО соответствует тип записи. Отдельные атрибуты образуют поля записи. Между этими категориями существует следующая связь: • файл соответствует объекту; • число экземпляров объекта равно числу записей в файле; • число атрибутов, описывающих объект, равно числу полей в каждой записи. Каждому полю соответствует имя поля. Поле записи имеет свое значение поля. Значение (содержимое) поля описывает атрибут. Порядок выполнения работы
Описание алгоритма В пункте необходимо описать алгоритм или несколько алгоритмов, которые используются для решения поставленной задачи. Алгоритм можно описать абстрактным языком или представить в виде блок-схемы.
Например, алгоритм сортировки вставками в виде блок-схемы представлен на рис.4. Этот же алгоритм на абстрактном языке представлен ниже. Алгоритм сортировки вставками, состоит из 3 простых шагов:
Описание сценария диалога Данный разделпредполагает полное описание возможных ситуаций, возникающих в процессе взаимодействия пользователя и программы, и определяет интерфейс программы. Сценарий диалога, таким образом,- это описание последовательности действий программы и пользователя в процессе работы программы, включая организацию ввода данных и вывода выходных данных программы. Описание процедур и функций В разделе приводятся и описываются все модули, используемые в программе. Входные и выходные данные для каждого модуля. Необходимо также в разделе описать структуру программы и интерфейс модулей. Требования к функциональным характеристикам
Проектируемая система должна обеспечивать выполнение следующих основных функций: - ввод исходных данных задачи; - расчет параметров; - оценка стоимости реализации алгоритма по временным и объемным параметрам; - хранение исходных данных с возможностью их загрузки для повторной обработки; - хранение результатов решения с возможностью их повторной визуализации; - вывод результирующих данных; - хранение исходных данных с возможностью их загрузки для повторной обработки; - хранение результатов решения с возможностью их повторной визуализации.
Требования к оформлению пояснительной записки
Пояснительная записка должна отражать связь выполненной работы с изучаемым предметом и содержать следующие пункты: 1. Введение. 2. Содержательная постановка и описание задачи. 3. Анализ предметной области. 4. Описание организации структур данных. 5. Описание алгоритма. 6. Формальное описание входных данных. 7. Формальное описание выходных данных. 8. Описание диалога. 9. Описание процедур и функций. 10. Результаты тестирования программы. 11. Заключение. 12. Список литературы. Кроме этого, в приложение необходимо включить: 1. Графическое описание данных. 2. Формат выходного документа. 3. Листинг программы. В приложении приведены пример оформления титульного листа.
Тематика курсовых работ
1. Применение линейных структур данных при разработке программных приложений: - применение стеков при разработке приложений; - применение очередей при разработке приложений; - применение деков при разработке приложений; - применение иерархических списков при разработке приложений.
2. Применение нелинейных структур данных при разработке программных приложений: - работа с бинарными деревьями поиска; - работа со сбалансированными деревьями поиска; - работа с оптимальными деревьями поиска; - работа с B-деревьями; - работа с крупномасштабными деревьями; - применение бинарных деревьев при решении задачи сжатия информации (алгоритм Хаффмена).
3. Организация исчерпывающего поиска: - применение рекурсии при решении задач поиска; - применение алгоритмов с возвратом; - применение метода ветвей и границ; - применение метода динамического программирования.
4. Алгоритмы сортировки: - алгоритмы внутренней сортировки (вставкой, обменом, выбором); - алгоритмы быстрой сортировки (метод Шелла, пирамидальная сортировка, сортировка разделением); - алгоритмы внешней сортировки.
5. Алгоритмы решения задач на графах: - алгоритмы решения задач поиска на графах в глубину и ширину; - алгоритмы решения задач оценки связности графов; - алгоритмы решения задач нахождения кратчайших путей; - алгоритмы решения задач нахождения остовных деревьев; - алгоритмы решения задач упорядочения графов; - алгоритмы решения задач нахождения циклов в графах. Список рекомендуемой литературы
1. Ахо А., Хопкрофт Дж., Ульман Дж. Структуры данных и алгоритмы. – М.: Вильямс, 2001. 2. Вирт Н. Алгоритмы и структуры данных. – СПб.: Невский диалект, 2001. 3. Кнут Д. Искусство программирования для ЭВМ. Т.1. Основные алгоритмы. – М.: Вильямс, 2000. 4. Кнут Д. Искусство программирования для ЭВМ. Т.1. Получисленные алгоритмы. – М.: Вильямс, 2000. 5. Кнут Д. Искусство программирования для ЭВМ. Т.3. Сортировка и поиск. – М.: Вильямс, 2000. 6. Кормен Т., Лейзерсон Ч., Ривест Р. Алгоритмы: Построение и анализ. М.: МЦНМО, 2001. 7. Баррон Г. Рекурсивные методы в программировании. – М.: Мир, 1974. 8. Гудман С., Хидетниеми С. Введение в разработку и анализ алгоритмов. – М.: Мир, 1981. 9. Макконелл Дж. Анализ алгоритмов: Вводный курс. – М.: Техносфера, 2002. 10. Хусаинов Б. С. Структуры и алгоритмы обработки данных: Примеры на языке Си: Учебное пособие для вузов. – М.: Финансы и статистика, 2004.
Приложение. Образец формы титульного листа курсовой работы
Министерство образования РФ
ФГБОУ ВПО «Дагестанский государственный технический университет» Факультет КТВТиЭ
Российской федерации ФГБОУ ВПО «Дагестанский Государственный Технический Университет» Факультет КТВТиЭ
Кафедра программного обеспечения ВТ и АС
Методические указания к выполнению курсовой работы по дисциплине
«Алгоритмы и структуры данных»
для студентов направления подготовки бакалавров 231000.62 – «Программная инженерия»
Махачкала - 2014г. УДК 517.11
Методические указания к выполнению курсовой работы по дисциплине «Алгоритмы и структуры данных» для студентов направления подготовки бакалавров 231000.62 – «Программная инженерия». Махачкала, ДГТУ, 2014. –14с. Методические указания предназначены для использования при выполнении курсовой работы по дисциплине «Алгоритмы и структуры данных». Сформулированы цели и задачи, содержание и порядок выполнения проекта, приводится пример оформления проекта.
Составитель: Сулейманова О.Ш., старший преподаватель кафедры ПОВТиАС Шахпазова И.Ф., к.ф.-м.н., старший преподаватель кафедры ПОВТиАС Рецензенты: Исабекова Т.И., к.ф.-м.н., доцент, зав. кафедры ПМиИ, Кобзаренко Д.Н., д.т.н., зав.лаборатории информационных технологий в энергетике ФГБУН «Института проблем геотермии ДНЦ РАН»
Печатается по постановлению Ученого совета Дагестанского Государственного Технического университета
Оглавление
Цель выполнения курсовой работы.. 4 Теоретические сведения. 4 Порядок выполнения работы.. 6 Требования к функциональным характеристикам. 9 Требования к оформлению пояснительной записки. 10 Тематика курсовых работ. 11 Список рекомендуемой литературы.. 12 Приложение. Образец формы титульного листа курсовой работы.. 13
|
|||||||
Последнее изменение этой страницы: 2016-04-19; просмотров: 433; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.15.219.174 (0.01 с.) |