engineerklub | Дата: Пятница, 15.11.2024, 07:09 | Сообщение # 1 |
Генералиссимус
Группа: Администраторы
Сообщений: 29399
Статус: Offline
| Структуры и алгоритмы обработки данных (часть 1). Для всех вариантов.
Тип работы: Работа Лабораторная Форматы файлов: Microsoft Word Сдано в учебном заведении: ДО СИБГУТИ
Описание: ЛАБОРАТОРНАЯ РАБОТА № 1 (часть 1 Методы сортировки и поиска) Задание Методы сортировки массивов. Цель работы: Освоить методы сортировки массивов. Порядок выполнения работы: 1. Разработать подпрограммы сортировки массива целых чисел методами прямого выбора, методом Шелла и методом пирамидальной сортировки (или методом Хоара на выбор). 2. Отладить правильность работы сортировок на массивах малой длины. Кроме того, контролировать правильность сортировки путем подсчета контрольной суммы и числа серий в массиве (оформить в виде подпрограммы). Серией называется неубывающая последовательность элементов массива максимальной длины. Пример: в массиве 23145314 (23 145 3 14) содержится 4 серии 3. Составить таблицу следующего вида (данные получить экспериментально) для n=100, 200, 300, 400, 500. (n – количество элементов в массиве) Размер массива Мф+Сф м. прямого выбора Мф+Сф м. Шелла Мф+Сф м. пирамидальная (Хоара) Случ. Возр. Убыв. Случ. Возр. Убыв. Случ. Возр. Убыв. 100 200 300 400 500 4. Проанализировать полученные результаты, сравнить их с теоретическими оценками трудоемкости.
ЛАБОРАТОРНАЯ РАБОТА №2 (часть 1 Методы сортировки и поиска) Задание Быстрые методы сортировки последовательностей. Цель работы: Освоить быстрые методы сортировки последовательностей Порядок выполнения работы: 1. Разработать подпрограммы сортировки последовательности целых чисел методом прямого слияния (или методом цифровой сортировки). 2. Разработать сервисные функции для работы со списками: • заполнение списка (стека) возрастающими числами; • заполнение списка (стека) убывающими числами; • заполнение списка (стека) случайными числами; • печать элементов списка; • подсчет контрольной суммы элементов списка; • подсчет количества серий в списке. 3. Составить таблицу следующего вида (данные получить экспериментально) для n= 100, 200, 300, 400, 500. (n – количество элементов в массиве) Длина списка (Мф+Сф ) метод прямого слияния (цифровая сорт.) Возрастающие числа Убывающие числа Случайные числа 100 200 300 400 500 4. Проанализировать полученные результаты, сравнить их с теоретическими оценками трудоемкости. Сравнить полученные результаты с трудоемкостью метода прямого выбора и метода пирамидальной сортировки (использовать результаты предыдущих лабораторных работ).
ЛАБОРАТОРНАЯ РАБОТА №3 (часть 1 Методы сортировки и поиска) Задание Хэширование и поиск. Цель работы: Изучение возможности хэширования данных для организации поиска. Порядок выполнения работы: 1. Разработать подпрограмму хеширования массива целых чисел методом прямого связывания и подпрограмму поиска в хеш-таблице элемента по заданному ключу. Вывести на экран построенную хэш-таблицу. 2. Реализовать подпрограмму хеширования массива целых чисел методом открытой адресации. Для разрешения коллизий использовать линейные и квадратичные пробы. Вывести на экран заполненные хеш-таблицы для m=11 в виде Номер ячейки 0 1 2 3 … … m-1 Число 3. Подсчитать и сравнить количество коллизий при линейных и квадратичных пробах. Построить таблицу и проанализировать полученные результаты: Размер хеш-таблицы Количество исходных чисел Количество коллизий Линейные пробы Квадратичные пробы 13 15 29 30 43 45 67 70 83 85 4. Организовать поиск элемента с заданным ключом для метода открытой адресации (линейные и квадратичные пробы).
СКАЧАТЬ
|
|
| |