Основы программирования. Указатели. Динамические структуры данных. Абстрактные типы данных. Классы - 21 стр.

UptoLike

Составители: 

23
p^.next:=NewNode(p^.data,p^.next);
p^.data:=x;
p:=p^.next;
3 x 7
p
5
6. Удаление текущего элемента.
3 5 4
p
7
Для быстрого выполнения этого действия требуется, чтобы существовал эле-
мент, следующий за текущим. Скопируем поле данных и поле next из следую-
щего элемента в текущий, после чего освободим следующий:
t:=p^.next;
p^.data:=t^.data;
p^.next:=t^.next;
Dispose(t);
3 7 4
p
7
t
7. Проход по списку.
3 5 7
p
Пусть над всеми элементами списка необходимо выполнить некоторую опе-
рацию Oper, заданную процедурой с одним ссылочным параметром, например:
procedure Oper(var i: integer);
begin
i:=i*2;
end;
Установим указатель на его первый элемент и, пока значение указателя не равно
nil, будем выполнять операцию Oper и передвигаться на следующий элемент:
while p<>nil do
begin
Oper(p^.data);
p:=p^.next;
end
;