Пример 7. Процедура вставки нового звена в список Список после удаления звена с элементом с
Удаляемое звено теперь можно уничтожить, освобождая занимаемый им участок памяти для других целей.
Алгоритм:
Надо изменить одну ссылкуp^.sled:=p^.sled^.sled;
В процедуре нужна локальная ссылка g для удаления ненужного звена
Procedure del(p:ss);
var g:ss;
Begin
g:=p^.sled;
p^.sled:=p^.sled^.sled;
dispose(g);
End;
Напишем процедуру, добавляющую к списку новое звено g с элементом m после звена, на которое указывает ссылка р.
Операция вставки нового звена требует изменения двух ссылок, геометрически – двух стрелок:
Список до вставки звена с элементом m
Список после вставки звена с элементом m
Алгоритм:
Необходимо определить две новые ссылки g^.sled и p^.sled
Чтобы вставить в список новое звено на первое место, достаточно в качестве ссылки р взять ссылку на заглавное звено
Procedure vstavka(p:ss;m:integer);
var g:ss; Begin
new(g);
g^.inf:=m;
g^.sled:=p^.sled;
p^.sled:=g;
End;
Дата добавления: 2014-01-05 ; Просмотров: 481 ; Нарушение авторских прав? ; Мы поможем в написании вашей работы!
Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет