На этом шаге мы рассмотрим получение копии однонаправленного списка..
Приведем процедуру копирования однонаправленного линейного списка с заглавным звеном pBegin:
Procedure Copy_List (pBegin: PtrRec; var pBegin1: PtrRec); {pBegin1 - указатель на список-копию} var pAux, pAux1: PtrRec; Begin pAux := pBegin^.pNext; New (pBegin1); pBegin1 := pBegin; pAux1^.pNext := Nil; While pAux<>Nil do Begin New (pAux1^.pNext); pAux1 := pAux1^.pNext; pAux1^.Element := pAux^.Element; pAux1^.pNext := Nil; pAux := pAux^.pNext End End;
На следующем шаге мы рассмотрим очистку однонаправленного списка.