- •( Для студентов, обучающихся по направлению подготовки 6.050101 ”Компьютерные науки”)
- •( Для студентов, обучающихся по направлению подготовки 6.050101 ”Компьютерные науки”)
- •Введение
- •Классификация структур данных
- •Структура оперативной памяти
- •Лабораторная работа 1 методы сортировки постоянных таблиц и поиска в таблицах
- •Методические указания к выполнению работы
- •Определение операции сортировки
- •Линейный выбор (сортировка выбором)
- •Линейный выбор с подсчетом
- •Метод "пузырька"
- •{Описание типов}
- •Шейкер – сортировка
- •Метод вставки с прямым включением
- •Метод вставки с бинарным включением
- •Метод двухпутевой вставки
- •Метод Шелла
- •"Быстрая" сортировка (обменная сортировка с разделением)
- •Метод простого двухпутевого слияния (сортировка слиянием)
- •Метод естественного слияния (сортировка слиянием)
- •Дихотомический поиск по совпадению
- •Дихотомический поиск нескольких записей
- •Дихотомический поиск по близости
- •Дихотомический поиск по интервалу
- •Задание к лабораторной работе
- •Варианты заданий
- •Требования к выполнению лабораторной работы
- •Контрольные вопросы
- •Литература
- •Приложение а Примеры программ, выполняющих сортировку таблицы методом линейного выбора
- •Программа на языке с
- •Приложение в краткое описание системы turbo pascal
- •1. Структура pascal-программы
- •2. Простые типы
- •3. Составные типы
- •4. Операторы
- •5. Процедуры и функции
- •6. Файлы
- •7. Управление консолью
- •Содержание
- •Методические указания и задания
- •К лабораторным работам по курсу
- •«Алгоритмы и структуры данных»
- •(Для студентов обучающихся по направлению подготовки 6.050101 ”Компьютерные науки”)
Варианты заданий
Упорядочить таблицу, используя:
-
Метод линейного выбора с подсчетом.
-
Метод шейкер - сортировки.
3. Метод вставки с бинарным включением.
4. Метод двухпутевой вставки.
5. Метод Шелла.
6. Метод "быстрой" сортировки (в качестве разделяющего использовать первый элемент таблицы).
7. Метод "быстрой" сортировки (в качестве разделяющего использовать средний элемент таблицы).
8. Метод простого двухпутевого слияния.
9. Метод естественного слияния.
Упорядочить таблицу указанными в варианте методами и выполнить сравнительный анализ зтих методов:
10. Метод вставки с прямым включением и метод двухпутевой вставки.
11. Метод вставки с прямым включением и метод Шелла.
12. Метод "пузырька" и метод шейкер‑сортировки.
13. Метод линейного выбора и метод линейного выбора с подсчетом.
14. Метод линейного выбора и метод "быстрой" сортировки (с первым разделяющим элементом).
15. Метод вставки с прямым включением и метод “быстрой” сортировки (со средним разделяющим элементом).
16. Метод линейного выбора и метод “быстрой” сортировки (со средним разделяющим элементом).
17. Метод вставки с прямым включением и метод "быстрой" сортировки (с первым разделяющим элементом).
18. Метод вставки с прямым включением и метод вставки с бинарным включением.
19. Метод “пузырька” и метод вставки с бинарным включением.
20. Метод “пузырька” и метод простого двухпутевого слияния.
21. Методы "пузырька", линейного выбора и вставки с прямым включением.
22. Метод "пузырька" и метод вставки с прямым включением
Выполнить следующие виды дихотомического поиска:
23. Поиск по совпадению при наличии в таблице нескольких записей с заданным значением ключа (предварительно упорядочить таблицу методом вставки с прямым включением).
24. Поиск по близости (предварительно упорядочить таблицу методом “пузырька”).
25. Поиск по интервалу (предварительно упорядочить таблицу методом вставки с прямым включением).
26. Поиск записей, ключи которых больше заданного значения (предварительно упорядочить таблицу методом шейкер-сортировки).
27. Поиск записей, ключи которых меньше заданного значения (предварительно упорядочить таблицу методом линейного выбора).
Пояснения:
Сравнительный анализ методов сортировки (варианты 10-22) можно осуществить подсчетом числа сравнений, выполненных в процессе сортировки таблицы разными методами.
Требования к выполнению лабораторной работы
Разрабатываемое приложение должно удовлетворять следующим требованиям:
1. Алгоритмы, реализующие операции над таблицами, нужно оформить в виде процедур (функций) с соответствующими формальными параметрами.
2. Содержимое контрольной таблицы может считываться из файла, но должна быть предусмотрена также возможность ввода записей таблицы в интерактивном режиме. Таблица должна иметь не менее двух полей, одно из которых ‑ ключевое.
3. На экран выводить:
а) исходную таблицу;
б) результаты выполнения шагов сортировки (поиска), демонстрирующие конкретный метод (при этом рекомендуется выполнять вывод данных различным цветом);
в) окончательный результат.
4. Для простых методов сортировки контрольную таблицу можно брать небольшой, примерно, 10-15 записей, для сложных – не менее 25 записей (чтобы выполнилось несколько шагов метода).