Связанный список.

Пусть x0 , x1 ,x2 ,. . . . .xn-3, xn-2, xn-1 – совокупность значений данных некоторого типа tip, которые необходимо создать и сохранять в процессе выполнения алгоритма.

Можно описать массив указателей и для каждого создать динамическую переменную:

 

  . . . . . .    

Xn-1
X2
X1  
X0 00
Xn-3
Xn-2 n-2

 

Выбрать нужный размер массива указателей часто не удаётся.Используетсятакой способ:под динамическую

переменную выделяется память, но в этой памяти кроме переменной хранится ещё указатель на следующую динамическую переменную:

 

Xi+1
Xi

 

. . . . . .

Последняя переменная в поле указателя хранит NULL. Кроме того, выделяют указатель на первый элемент (указатель на список), пусть это beg.Такая структура называется связанный список.

 

 


Наличие beg позволяет добраться до любого элемента списка. Это список односвязанный.

       
   
 
 

 


Если вместе с переменной хранится указатель на следующую переменную и указатель на предыдущую переменную, то список становится двунаправленным, он называется двусвязанным.

 

 


Если последний элемент списка указывает на его первый элемент, список называется циклическим.