Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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.48 MB
Время: 0.03 c
14-1132401904
Иксик
2005-11-19 15:05
2005.12.11
Очень странная проблема


2-1133163208
312Kbps
2005-11-28 10:33
2005.12.11
idHTTP , Помогите новичку ))))


2-1132644365
DDDeN
2005-11-22 10:26
2005.12.11
Получение HTML со страницы


2-1132587016
aglar
2005-11-21 18:30
2005.12.11
Как разрешить общий доступ к диску?


1-1131574327
turonix
2005-11-10 01:12
2005.12.11
Каким образом работать с шестнадцатиричными цветами в Delphi