- •Лабораторна робота №1
- •3 Теоретичний матеріал
- •4 Варіанти завдань для виконання
- •Хід виконання практичної роботи
- •Питання до захисту :
- •Лабораторна робота №2
- •3 Теоретичний матеріал
- •4 Вихідні дані роботи
- •Хід виконання практичної роботи
- •Питання до захисту :
- •Лабораторна робота №3
- •3 Теоретичний матеріал
- •4 Хід виконання практичної роботи
- •Питання до захисту :
- •Лабораторна робота №4
- •3 Теоретичний матеріал
- •4 Вихідні дані роботи
- •Хід виконання практичної роботи
- •Питання до захисту :
- •Лабораторна робота №5
- •3 Теоретичний матеріал
- •4 Вихідні дані роботи
- •5 Хід виконання практичної роботи
- •Питання до захисту :
- •Лабораторна робота №6
- •3 Теоретичний матеріал
- •4 Вихідні дані роботи
- •5 Хід виконання практичної роботи
- •Питання до захисту :
- •Лабораторна робота №7
- •3 Теоретичний матеріал
- •4 Вихідні дані роботи
- •5 Хід виконання практичної роботи
- •Питання до захисту :
Питання до захисту :
У чому відмінність роботи стека від черги?
Відповідь:____________________________________________________
_____________________________________________________________
У чому переваги і недоліки організації структур стека і
черги?
Відповідь:____________________________________________________
_____________________________________________________________
Для моделювання яких реальних завдань зручно використовувати стек? А для яких чергу?
Відповідь:____________________________________________________
_____________________________________________________________
З якою метою в програмах виконується перевірка на порожнечу стека і черги?
Відповідь:____________________________________________________
_____________________________________________________________
Роботу виконав Роботу переві
Лабораторна робота №3
«Розробка програми створення зв'язаного списку в С++»
1 Тема роботи: Використання зв'язаного список із записів, та реалізація операцій зі зв'язаним списком.
2 Мета роботи: Формування знань і умінь по роботі з динамічною пам'яттю. Придбання навичок роботи з динамічними структурами даних.
3 Теоретичний матеріал
Списком називається впорядкована множина, що складається із змінного числа елементів, до яких застосовні операції включення, виключення. Список, що відображає відносини сусідства між елементами, називається лінійним. Якщо обмеження на довжину списку не допускаються, то список представляється в пам'яті у вигляді зв'язної структури. Лінійні зв'язні списки є простими динамічними структурами даних.
Найчастіше вказівники використовуються для посилання на записи, тим самим досягається значна економія пам'яті. Якщо ж сам запис містить в собі поле-вказівник, який вказує на наступну за нею запис, то це дозволяє утворити пов'язані списки - структуру, в якій окремі записи послідовно пов'язані один з одним. У наведеному нижче прикладі використовуються записи, в яких поряд з даними про автомобіль є вказівник на наступний запис, завдяки чому виходить зв'язаний список (див. рис. 3.1)
Рисунок 3.1 – Зв’язаний список
Одне з полів кожного об'єкта пов'язаного списку має тип вказівник і вказує на черговий об'єкт в списку. Вказівник на перший об'єкт міститься в змінної First, а останній об'єкт має вказівник на Nil.
4 Хід виконання практичної роботи
Необхідно створити зв'язаний список із записів, що містять відомості про автомобілі, а також реалізувати операції зі зв'язаним списком: запис першим у списку, видалення першого об'єкта зі списку, перегляд усього списку, видалення об'єкта, наступного за вказаним.
void Input(element &elem); - Функція введення даних в структуру.
void Add(element &elem); - Функція для додавання значень в список .
void Show(); - Функція для відображення списку на екрані
element *temp=Head; - Визначаємо покажчик, який спочатку він дорівнює адресою початку списку.
int N,menu, ydal; - Число елементів в список.
Auto lst; - Змінна, тип якої список .
cin >> N; - Вказали скільки елементів вводити в список .
lst.Show(); - Виведення списку на екран.
lst.Add(elem); - Додавання елемента в список .
