Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
mod2_OP.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
40.49 Кб
Скачать

8.Лінійні структури даних Лінійні структури даних

В основі більшості лінійних структур даних покладено поняття лінійного списку.

Лінійний список– це впорядкована множина, яка складається з n-элементов (вузлів). Структурні властивості множини обмежуються лінійним положенням вузлів. Якщо n > 0, а X – список (множина вузлів), то х1 Î Х – перший вузол, а хnÎ Х – останній вузол лінійного списку.

У вузлах списку є дві частини (поля). Перша частина, містить значення наперед визначених або раніше визначених типів. Обробка саме цих значень є метою програми. Друга частина містить значення-зв’язки (посилання), які пов’язують вузли між собою.

Лінійний список

Список може бути односпрямованим , якщо його вузли мають зв’язки , які спрямовані тільки від голови до останнього вузла хвоста, і двоспрямованими , якщо його вузли мають що зв’язки додатково спрямовані від останнього вузла хвоста до голови.

Оскільки можна вказати лексикографічний порядок вузлів , то список ще називається зв’язним, При цьому односпрямований список називається однозв’язним а двоспрямований – двозв’язним.

До списку можна застосовувати , наприклад, такі операції робити список на два списку , об’єднати два списки, додати вузли до списку.

Підходи до реалізації списку

З погляду реалізації списку в пам’яті даних можна розглядати два підходи

  • Вузли списку розміщуються в суміжних ділянках памяті , утворюючи масив.

  • Вузли списку розміщуються в довільних ділянках памяті, зявзуючись спеціальним чином і утворюючи шляхом зчеплення вузлів , або зв’язний список.

Другий підхід зазвичай реалізується за допомогою механізму динамічного розподілу памяті.

На основі лінійного списку будуються лінійні структури - Стек, черга, дек

Стек

Стек – це лінійний список , в якому всі включення і виключення вузлів здійснюються в одному кінці списку , який називається вершиною.

Черга

Черга – це лінійний список , в якому всі проводяться в одному кінці а всі виключення в іншому.

Дек

Дек – ц е лінійний список в якому всі включення та виключення виконуються з обох боків.

9.Векторне представлення лінійних структур даних

Для всіхлінійних структур данихвекторний список моделюєтьсязначеннямиіндексованого типу. В цьомувипадкучастішевсьоговекторний список подається у виглядікільця.

При виконаннізавданнялабораторноїроботипропонується для зберігання та обробкизначень списку (стека, черги) використовуватиіндексованузмінну, щозберігатимеодновимірнемультизначення з компонентів того типу, якиймаютьданнілінійного списку, а для вказівки на один або два кінця списку – змінніцілого типу, щозберігатимутьіндексикомпонентів–крайніхвузлів списку.

10.Звязне представлення лінійних структур даних

Для всіхлінійних структур данихзв'язний список моделюється за допомогоювказівнихзмінних і динамічногорозподілупам'яті в «купі». При цьомузначенняв «купі» не розташовуютьсявпритул, а навігація у списку здійснюєтьсязавдякизв’язкамвузлів списку.

При виконанні завдання лабораторної роботи пропонується для зберігання та обробки значень списку (стека, черги) використовувати показчик іменованого типу, одне поле якого зберігатиме данні, інші поля, описані типом-показчиком на той самий іменований тип, відповідатимуть за зчеплення вузлів.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]