- •Модуль 1. „Пошук у структурах даних з послідовним доступом” Лабораторна робота № 1
- •Лабораторна робота № 2
- •Лабораторна робота № 3
- •Лабораторна робота № 4
- •Модуль 2. „Сортування структур даних з прямим доступом” Лабораторна робота № 5
- •Лабораторна робота № 6
- •Лабораторна робота № 7
- •Лабораторна робота № 8
- •Лабораторна робота № 9
- •Лабораторна робота № 10
- •Модуль 3. „Сортування структур даних з послідовним доступом” Лабораторна робота № 11
- •Лабораторна робота № 12
- •Лабораторна робота № 13-14
- •Лабораторна робота № 15-16
Лабораторна робота № 3
Тема: Пошук підпослідовності у послідовності. Алгоритм Кнута – Моріса – Пратта.
Завдання:
Користуючись методом Кнута – Моріса – Пратта (КМП) пошуку підпослідовності у послідовності, встановити входження деякого образу у базовий рядок. Якщо співпадання має місце, то вказати порядковий індекс елемента в базі, починаючи з якого образ повністю співпадає з елементами бази, інакше – вивести повідомлення про його відсутність. Визначити кількість важких операцій порівняння, що виконуються при цьому.
При аналізі складності різних алгоритмів пошуку підпослідовності у послідовності розглянути наступні варіанти вхідних даних:
a = (2; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1), b = (2; 1; 1; 1; 1; 1; 1; 1; 1);
a = (1; 1; 1; 1; 1; 1; 1; 1; 1; 2; 1; 1; 1; 1; 1; 1; 1; 1), b = (2; 1; 1; 1; 1; 1; 1; 1; 1);
a = (1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 2), b = (1; 1; 1; 1; 1; 1; 1; 1; 2);
a = (1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 2), b = (1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 2);
a = (1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 2), b = (1; 1; 2);
a = (1; 2; 1; 2; 3; 1; 2; 1; 2; 3; 1; 2; 1; 2; 3; 4; 5; 6), b = (1; 2; 1; 2; 3; 1; 2; 1; 2; 3; 4; 5);
Лабораторна робота № 4
Тема: Пошук підпослідовності у послідовності. Алгоритм Боуера – Мура.
Завдання:
Користуючись методом Боуера – Мура (БМ) пошуку підпослідовності у послідовності, встановити входження деякого образу у базовий рядок. Якщо співпадання має місце, то вказати порядковий індекс елемента в базі, починаючи з якого образ повністю співпадає з елементами бази, інакше – вивести повідомлення про його відсутність. Визначити кількість важких операцій порівняння, що виконуються при цьому.
При аналізі складності різних алгоритмів пошуку підпослідовності у послідовності розглянути наступні варіанти вхідних даних:
a = (2; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1), b = (2; 1; 1; 1; 1; 1; 1; 1; 1);
a = (1; 1; 1; 1; 1; 1; 1; 1; 1; 2; 1; 1; 1; 1; 1; 1; 1; 1), b = (2; 1; 1; 1; 1; 1; 1; 1; 1);
a = (1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 2), b = (1; 1; 1; 1; 1; 1; 1; 1; 2);
a = (1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 2), b = (1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 2);
a = (1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 1; 2), b = (1; 1; 2);
a = (1; 2; 1; 2; 3; 1; 2; 1; 2; 3; 1; 2; 1; 2; 3; 4; 5; 6), b = (1; 2; 1; 2; 3; 1; 2; 1; 2; 3; 4; 5);
Модуль 2. „Сортування структур даних з прямим доступом” Лабораторна робота № 5
Тема: Прямі алгоритми сортування масивів. Сортування включенням.
Завдання:
Користуючись методом прямого включення сортування масивів, впорядкувати заданий набір елементів по зростанню (спаданню). Визначити кількість важких операцій порівняння та переприсвоєння, що виконуються при цьому.
Користуючись методом бінарного включення сортування масивів, впорядкувати заданий набір елементів по зростанню (спаданню). Визначити кількість важких операцій порівняння та переприсвоєння, що виконуються при цьому.
При аналізі складності різних алгоритмів сортування розглянути наступні варіанти вхідних даних:
три випадки початкового порядку елементів (прямо впорядкований, обернено впорядкований, довільний);
три випадки довжини структури даних (N=100 – „короткий масив”, N=1000 – „середній масив”, N=10000 – „довгий масив”).
