- •Министерство образования и науки российской федерации
- •Содержание
- •Введение
- •Лабораторная работа № 1. Среда разработки приложений Microsoft Visual Studio .Net 2010
- •Основные сведения
- •Создание консольного приложения
- •Содержание файла «TestProject.Cpp»
- •Содержание файла «stdafx.Cpp»
- •Содержание файла «stdafx.H»
- •Задание на работу
- •Текст II
- •Текст III
- •Содержание отчета
- •Лабораторная работа № 2. Представление данных в эвм
- •Задание на работу
- •Входные данные
- •Пример выполнения задания
- •Классы выделяемых литер
- •Классы выделяемых лексем
- •Диаграмма (граф) переходов
- •Входной файл
- •Выходной файл
- •Содержание отчета
- •Лабораторная работа № 4. Работа со стеком
- •Задание на работу
- •Пример содержимого заголовочного файла lab_stack.H
- •Алгоритмы для реализации атд «Стек» на языке Си
- •Реализация при помощи массива
- •Реализация при помощи связанных структур
- •Содержание отчета
- •Контрольные вопросы для допуска к лабораторной работе
- •Лабораторная работа № 5. Работа с очередью
- •Задание на работу
- •Пример содержимого заголовочного файла lab_queue.H
- •Алгоритмы для реализации атд «Очередь» на языке Си
- •Реализация при помощи массива
- •Реализация при помощи связанных структур
- •Содержание отчета
- •Контрольные вопросы для допуска к лабораторной работе
- •Лабораторная работа № 6. Хеширование
- •Задание на работу
- •Пример индивидуального задания на работу
- •Входные данные
- •Выходные данные
- •Содержание отчета
- •Пример входных данных
- •Краткая теоретическая справка
- •Задача о программисте Пете
- •Входные данные
- •Выходные данные
- •Математическая модель
- •Решение задачи о программисте Пете полным перебором
- •Текст программы
- •Генератор тестовых наборов
- •Текст программы
- •Литература
Министерство образования и науки российской федерации
НОВГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИМЕНИ ЯРОСЛАВА МУДРОГО
СТРУКТУРЫ ДАННЫХ И АЛГОРИТМЫ
Лабораторный практикум
ВЕЛИКИЙ НОВГОРОД
2013
УДК 004.42(075.8) Печатается по решению
ББК 32.973.26-018Я73 РИС НовГУ
С87
Рецензент: Середа С.Г. ,
Заведующий кафедрой естественно-научных дисциплин Северного филиала Российского государственного университета инновационных технологий и предпринимательства в г. Великий Новгород,
кандидат технических наук
Структуры данных и алгоритмы: лаб. практикум / авт.-сост. С. С. Андреев, П. М. Довгалюк; НовГУ им. Ярослава Мудрого. – Великий Новгород, 2013. – 43 с.
Лабораторный практикум по дисциплине «Структуры данных и алгоритмы» содержит описание лабораторных работ по изучению способов представления данных в ЭВМ, базовых абстрактных типов данных и алгоритмов, используемых при решении прикладных задач.
Предназначено для студентов, обучающихся по направлению 230100 «Информатика и вычислительная техника», а также для студентов других направлений подготовки, изучающих аналогичные дисциплины.
УДК 004.42(072.8)
ББК 32.973.26-018Я73
© Новгородский государственный
университет, 2013
© С. С. Андреев, П. М. Довгалюк, составление, 2013
Содержание
1 Введение 5
2 Лабораторная работа № 1. СРЕДА РАЗРАБОТКИ ПРИЛОЖЕНИЙ Microsoft Visual Studio .NET 2010 6
2.1 Основные сведения 6
2.2 Создание консольного приложения 6
2.3 Задание на работу 11
2.4 Содержание отчета 14
3 Лабораторная работа № 2. ПРЕДСТАВЛЕНИЕ ДАННЫХ В ЭВМ 16
3.1 Задание на работу 16
3.2 Содержание отчета 17
4 Лабораторная работа № 3. УПРАВЛЕНИЕ ПРИ ПОМОЩИ ТАБЛИЦ 18
4.1 Задание на работу 18
4.2 Пример выполнения задания 18
4.3 Содержание отчета 22
5 Лабораторная работа № 4. РАБОТА СО СТЕКОМ 24
5.1 Задание на работу 24
5.2 Пример содержимого заголовочного файла lab_stack.h 24
Алгоритмы для реализации АТД «Стек» на языке Си 25
5.2.1 Реализация при помощи массива 25
5.2.2 Реализация при помощи связанных структур 26
5.3 Содержание отчета 27
5.4 Контрольные вопросы для допуска к лабораторной работе 28
6 Лабораторная работа № 5. РАБОТА С ОЧЕРЕДЬЮ 29
6.1 Задание на работу 29
6.2 Пример содержимого заголовочного файла lab_queue.h 30
6.3 Алгоритмы для реализации АТД «Очередь» на языке Си 30
6.3.1 Реализация при помощи массива 30
6.3.2 Реализация при помощи связанных структур 31
6.4 Содержание отчета 33
6.5 Контрольные вопросы для допуска к лабораторной работе 33
7 Лабораторная работа № 6. ХЕШИРОВАНИЕ 34
7.1 Задание на работу 34
7.2 Пример индивидуального задания на работу 34
7.3 Содержание отчета 35
8 Лабораторная работа № 7. ДЕРЕВЬЯ 36
8.1 Задание на работу 36
8.2 Пример индивидуального задания на работу 36
8.3 Содержание отчета 37
9 Лабораторная работа № 8. ДИНАМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ 39
9.1 Задание на работу 39
9.2 Краткая теоретическая справка 39
9.3 Задача о программисте Пете 40
9.4 Математическая модель 41
9.5 Решение задачи о программисте Пете полным перебором 42
9.6 Генератор тестовых наборов 45
10 ЛИТЕРАТУРА 48