Лінійний односпрямований список, лінійний двонаправлений список - лінійні структури даних

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

Малюнок 1 - Лінійний односпрямований список

Основні операції, здійснювані з лінійним односпрямованим списком:

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

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

Лінійний двонаправлений список

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

Малюнок 2 - Лінійний двонаправлений список

Основні операції, здійснювані з лінійним двонаправленим списком ті ж, що і з односпрямованим лінійним списком:

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