
- •Структуры и алгоритмы компьютерной обработки данных
- •Оглавление
- •Предисловие
- •Теоретический курс
- •1. Основные структуры данных
- •2. Задачи поиска в структурах данных
- •3. Задачи сортировки в структурах данных
- •4. Методы ускорения доступа к данным
- •5. Представление графов и деревьев
- •Лабораторный практикум
- •Лабораторная работа 1. Стеки и очереди
- •Необходимые исходные сведения
- •Блок-схема алгоритма
- •Контрольные вопросы
- •Лабораторная работа 2. Бинарные деревья
- •Необходимые исходные сведения
- •Результаты расчетов
- •Контрольные вопросы
- •Лабораторная работа 3. Поиск в таблице значений
- •Необходимые исходные сведения
- •Блок-схема алгоритма
- •К онтрольные вопросы
- •Лабораторная работа 4. Сортировка значений в таблице
- •Необходимые исходные сведения
- •Рекомендации по выполнению курсовой работы
- •1. Тематика курсовых работ
- •2. Последовательность выполнения работы
- •3. Оформление работы
- •4. Подготовка курсовой работы к защите
- •5. Типовые задания для курсовых работ
- •Примерные тестовые вопросы
- •Список рекомендуемой литературы
- •Структуры и алгоритмы компьютерной обработки данных Учебное пособие
- •428015 Чебоксары, Московский просп., 15
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
Федеральное государственное образовательное учреждение
высшего профессионального образования
«Чувашский государственный университет имени И.Н. Ульянова»
В.Н. Пичугин Р.В. Фёдоров
Структуры и алгоритмы компьютерной обработки данных
Учебное пособие
Чебоксары 2008
УДК 004.657
П 36
Пичугин В.Н.
П36 Структуры и алгоритмы компьютерной обработки данных: учеб. пособие / В.Н. Пичугин, Р.В. Фёдоров. Чебоксары: Изд-во Чуваш. ун-та, 2008. 162 с.
Рецензенты:
д-р физ.-мат. наук, профессор И.Т. Артемьев;
кафедра приборов и информационно-измерительных систем (ПИИС) Казанского государственного технического
университета им. А.Н. Туполева
ISBN
Приводятся общие сведения по теории курса, примеры программ, описание лабораторных работ по темам: «Стеки и очереди», «Бинарные деревья», «Поиск в таблице значений», «Сортировка значений в таблице».
Для студентов II курса факультета информатики и вычислительной техники, а также может быть полезно студентам технических специальностей при выполнении лабораторных работ по информатике и программированию.
Ответственный редактор канд.техн.наук, профессор Е.Г. Егоров
Утверждено Редакционно-издательским советом университета
УДК 004.657
I
Оглавление
Предисловие……….…………………………………………... |
4 |
|
|
Теоретический курс…..……………………………………….. |
6 |
1. Основные структуры данных……………………………… |
6 |
2. Задачи поиска в структурах данных………………………. |
25 |
3. Задачи сортировки в структурах данных…………………. |
38 |
4. Методы ускорения доступа к данным…………………...... |
65 |
5. Представление графов и деревьев………………………… |
79 |
|
|
Лабораторный практикум………………..………………….. |
110 |
1. Стеки и очереди…………………………………………...... |
112 |
2. Бинарные деревья…………………………………………... |
121 |
3. Поиск в таблице значений…………………………………. |
128 |
4. Сортировка значений в таблице…………………………… |
134 |
|
|
Рекомендации по выполнению курсовой работы…………….. |
143 |
|
|
Примерные тестовые вопросы………………………………….. |
154 |
|
|
Список рекомендуемой литературы…………………………. |
161 |
Предисловие
Известно, что на рынке компьютерных приложений и программного обеспечения наибольшим спросом пользуются большие программы и программные системы со сложными данными. Систематический и научный подход к построению таких программ очень важен, поскольку программисты могут избежать большого количества ошибок, если со знанием дела будут применять те или иные методы программирования. Практика показывает, что невозможно реализовать все методы без знаний о различных вариантах структурирования данных.
В данном учебном пособии изложены классические алгоритмы и методы программирования, показано на примерах, какая структура данных может быть использована в том или ином случае. Пособие подготовлено на основе опыта преподавания дисциплины «Структуры и алгоритмы компьютерной обработки данных» студентам специальности 010503 – Математическое обеспечение и администрирование информационных систем.
Пособие предназначено для студентов ВУЗов, углубленно изучающих информатику и программирование, преподавателей информатики, а также специалистов в области информационных технологий.
Цель пособия – научить студентов работать со структурами данных разных видов, обрабатывать их и программно реализовывать на языках программирования высокого уровня.
Главные задачи курса «Структуры и алгоритмы компьютерной обработки данных»:
рассмотрение основных структур данных;
применение рассмотренных структур данных в языках программирования высокого уровня;
рассмотрение всевозможных операций (сортировка, поиск) со структурами данных;
рассмотрение методов улучшения обработки структур данных.
Пособие состоит из четырёх частей. Первая часть посвящена краткому изложению теории, которая поможет студентам более компактно представить курс лекций по изучаемой дисциплине. Вторая часть содержит лабораторные работы по курсу. Третья часть содержит методические рекомендации по написанию курсовой работы. В четвертой части приведены примерные тестовые вопросы по курсу «Структуры и алгоритмы компьютерной обработки данных».
Пособие содержит набор задач для самостоятельного решения. Практически все части пособия содержат примеры больших программ, которые служат хорошей иллюстрацией теоретического материала. В некоторых примерах не только приведён текст программы с комментариями, но и отражены этапы её проектирования, развития и реализации. Авторы надеются, что пособие поможет в становлении математика-программиста и будет способствовать повышению культуры мышления. Пособие предназначено для овладения компьютерными методами обработки информации путём развития профессиональных навыков разработки, выбора и преобразования алгоритмов, что является важной составляющей эффективной реализации программного продукта. Представленный в пособии материал удовлетворяет требованиям основной образовательной программы подготовки специалистов в области прикладной математики и компьютерных наук и поддерживает вузовские курсы, в которых изучаются структуры и алгоритмы обработки данных.
Авторы благодарны своим рецензентам доктору физ.-мат. наук, профессору И.Т. Артемьеву и к.т.н., доценту кафедры ПИИС КГТУ им. А.Н. Туполева С.В. Смирновой, а также студентам и выпускникам Алатырского филиала ФГОУ ВПО «Чувашский государственный университет имени И.Н.Ульянова» по специальности 010503 – Математическое обеспечение и администрирование информационных систем, которые были самыми пристрастными и внимательными ценителями и судьями. Своими вопросами и замечаниями они помогли исправить шероховатости изложения материала и способствовали совершенствованию методики подачи материала.
Авторы будут признательны за любые замечания, предложения, пожелания, направляемые по адресу:
vladimir8927@mail.ru, 429820, Чувашия, г. Алатырь, ул. Московская, д. 30, тел.: 8(3531)2-04-36.