Лінійні списки. Основні визначення та поняття

Раніше розглядались структури, в яких зв ' язок між елементами заданий неявно. Однак в класі лінійних структур даних існують значно складніші зв ' язні структури, в яких функціональний зв ' язок між його елементами заданий явно. До таких структур належать спискові. Розглянемо найпростіші з таких структур, а саме, лінійні списки.

Список, що відображає відношення сусідства між елементами, називають лінійним. Будь-який інший список вважається нелінійним. Тип списків визначається типом зв ' язків між його елементами. За кількістю зв ' язків розрізняють списки одно- і багатозв ' язні, а за типом функції зв ' язку - лінійні і нелінійні.

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

Отже, поняттю "список" можна дати таке пояснення: організацію зберігання даних, при якій логічний порядок слідування даних визначається посиланнями aбo вказівниками, називають списковою організацією пам'яті, а дані, що зберігаються таким чином, - списком. Спискова організація пам ' яті має також назву зчеплення.

Елемент списку складається як мінімум з двох полів - безпосереднього значення елемента даних і вказівника на наступний елемент списку. У деяких випадках значення елементів даних можуть зберігатися окремо, тоді у полі "значення" елемента списку може знаходитися вказівник на місцезнаходження цього елемента даних. Вказівники елементів списку називають також адресами зв ' язку, або зв ' язками.

Однією з основних властивостей списків є те, що елементи розміщуються в пам ' яті довільним способом, а не в суміжних одиницях пам ' яті, як у векторів.

Кожний список має свій заголовок, у якому зберігається посилання на перший елемент списку. Заголовок списку називають також іменем списку. Всі інші елементи досягаються шляхом проходження списку за допомогою вказівників.

Існує два способи зображення списків: 1) графічний (рис.8.1,а); 2) дужковий (рис.8.1,б).

Рис.8.1. Приклади зображення списків: а) графічний; б) дужковий

При графічному способі список зображується у вигляді ланцюга, кожна ділянка якого складається з двох полів - довідки і тіла. Дужковий вираз для зображення списку зручний тоді, коли списки складаються з різних типів даних і зміна одного списку не впливає на другий. Наприклад, на рис.8.1,а зображено список, у якого в полі тіла елемента записано безпосередньо значення елемента даних, а на рис.8.1,б - вказівник на місцезнаходження елемента даних. Дужковий вираз у обох випадках залишається однаковим і не відображає різного вмістимого поля тіла елементів списку.

При обробці списків найчастіше виконуються такі дії:

1) доступ до к -го елемента списку з метою аналізу і заміни його полів;

2) включення нового елемента безпосередньо перед заданим;

3) виключення заданого елемента;

4) об’єднання декількох списків в один;

5) розбиття списку на два або більше списки;

6) копіювання списку;

7) визначення кількості елементів у списку;

8) знаходження елемента за заданими властивостями;

9) пересортування або впорядкування елементів списку у висхідному або низхідному порядку.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: