Программирование на языке Pascal




Реализация


Приведем фрагменты программ, решающих первую и третью задачи:

  1. {- голову списка обрабатываем отдельно -} while (head<>nil)and(head^.znach =0)do begin p:= head; head:= head^.next; dispose(p); end; {- середина и конец списка обрабатываются вместе -} p:= head; while p^.next <> nil do if p^.next^.znach = 0 then begin q:= p^.next; p^.next:= p^.next^.next; dispose(q); end else p:= p^.next;
  1. p:= head^.next; head^.next:= p^.next; p^.next:= p^.next^.next; head^.next^.next:= p;

Примеры перестройки односвязных списков

Рис. 10.5.  Примеры перестройки односвязных списков

  1)

  Высочайшая вершина азиатской части России (4506 м), находится на Алтае.

  2)

  Предположим, что в нашем примере каждый пациент приходит со своим креслом - это будет аналогом динамического выделения памяти под переменные.

© 2003-2007 INTUIT.ru. Все права защищены.




Содержание  Назад