Реферат: Двунаправленный динамический список
temp^.prev:=temp^.next;
temp^.next:=tmp;
end{2}
else temp:=temp^.next;
end;{1}
m:=false;
temp:=cut;
while temp^.prev<>nil do
begin{2.1}
if (temp^.fam
(temp^.fam=temp^.prev^.fam) and
(temp^.name
(temp^.fam=temp^.prev^.fam) and
(temp^.name=temp^.prev^.name) and
(temp^.fanem
begin{2.2}
m:=true;
if temp=cut then cut:=temp^.prev
else temp^.next^.prev:=temp^.prev;
if temp^.prev=first then
begin
first:=temp;
tmp:=nil;
end
else
begin{2.3}
temp^.prev^.prev^.next:=temp;
tmp:=temp^.prev^.prev;
end;{2.3}