ЛЕКЦИЯ 4. ОПЕРАЦИИ НАД СВЯЗНЫМИ СПИСКАМИ


Цели и задачи лекции: изучить основные приемы работы со списками

Основные вопросы: операции для работы со списками

Основные операции: Создание, вставка, удаление, просмотр.

Просмотр (перебор) элементов списка

При ее выполнении осуществляется последовательный доступ к элементам списка - ко всем до конца списка или до нахождения искомого элемента. Текущий элемент сначала равен первому, обрабатывается первый элемент, из текущего эл-та выбирается указатель на следующий эл-т и для следующей итерации следующий эл-т становится текущим; если текущий элемент был последний, то его поле next содержит пустой указатель, что приведет к выходу из цикла.

Алгоритм перебора для односвязного списка

{ Перебор 1-связного списка }

Procedure LookSll(head : sllptr);

{ head - указатель на начало списка }

var cur : sllptr; { адрес текущего элемента }

begin

cur:=head; { 1-й элемент списка назначается текущим }

while cur <> nil do begin

< обработка c^.inf >

cur:=cur^.next;

end; end;

В двухсвязном списке возможен перебор как в прямом направлении, так и в обратном.

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

Вставка элемента в середину односвязного списка

Рис. 4. Вставка элемента в середину 1-связного списка

Рис.5. Вставка элемента в середину 2-связного списка

Приведенные примеры обеспечивают вставку в середину списка, но не могут быть применены для вставки в начало списка. При последней должен модифицироваться указатель на начало списка, как показано на рис.5.6.

Рис. 6. Вставка элемента в начало 1-связного списка



Дата добавления: 2018-05-10; просмотров: 1023;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.008 сек.