Однонаправленные связанные списки

Связанный списокявляется простейшим типом данных динамической структуры. Компоненты связанного списка можно помещать и исключать произвольным образом [1,3,8,11]. Графическое представление связанного списка показано на рис. 2.1.

Элемент списка называется узлом. Каждый узел содержит два поля: поле информации info и поле следующего адреса ptrn. Поле адреса хранит указатель на следующий элемент. Доступ к списку осуществляется через указатель 1st, который содержит адрес первого элемента. Поле адреса последнего элемента хранит нулевое значение NULL. Пустой список инициализируется как 1st = NULL.

 

 

1st|         ptrn = NULL
[nfo ptrn —^ info ptrn   ... —+■ Info ptrn|
             
                   

Рис. 2.1

Введем обозначения [11]: пусть р— указатель на элемент списка; тогда mfo(p) — ссылка на информационную часть элемента; ptrn(/?) — ссылка на адрес следующего элемента; р = getnode() — выделение участка оперативной памяти под элемент списка; freenode(p) — освобождение участка оперативной памяти, отведенного под элемент списка.