Текущий архив: 2005.12.11;
Скачать: CL | DM;
ВнизПомогите примером Найти похожие ветки
← →
tytus (2005-11-23 15:22) [0]Как в паскале создать в памяти однонаправленный список?
← →
Reindeer Moss Eater © (2005-11-23 15:23) [1]В памяти он всегда будет двунаправленным и более.
← →
Reindeer Moss Eater © (2005-11-23 15:26) [2]type
tmylist = class
private
fList : TList;
public
function Next : Pointer;
end;
← →
TUser © (2005-11-23 15:26) [3]PwaGraph = ^TwaGraph;
TwaGraph =
record
VCount: integer;
LCount: integer;
TopVertex: TwaVertex; // a head
Next: PwaGraph;
end;
function NewGraph: PwaGraph;
begin
New (result);
with result^ do begin
VCount:=0;
LCount:=0;
InitVertex(TopVertex);
TopVertex.LCount:=MaxInt;
TopVertex.Index:=MaxInt;
Next:=nil;
end;
end;
Ну и добавить элемент потом можно
var temp: Pwagraph;
begin
temp:=NewGraph;
temp^.Next:=AHeadOfList;
AHeadOfList:=temp;
end;
← →
tytus (2005-11-23 15:30) [4][1] Сам пишу на делфи, начинал на паскале. Вот подкинули такую задачку - однонаправленный список. Как делать - не помню и все. А ведь препод не будет умничать - посмотрит прогу - и запорит если что не так...
← →
Reindeer Moss Eater © (2005-11-23 15:34) [5][2] и [3] эмулируют однонаправленный список.
На самом деле в памяти с произвольным доступом Random Access Memory не может быть никакого однонаправленного списка.
Впрочем преподы - они в другом, в особом мире живут.
← →
Плохиш © (2005-11-23 16:32) [6]Берёшь двунаправленный список, убираешь ссылку на предыдущий элемент и получаешь однонаправленный список.
PS. Ответ на [0] описан в любой книжке по паскалю.
Страницы: 1 вся ветка
Текущий архив: 2005.12.11;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.028 c