Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.12.23;
Скачать: CL | DM;

Вниз

Динамическая память   Найти похожие ветки 

 
Mox Fulder   (2003-11-29 12:51) [0]

Народ, бросте, плиз, какие-нибудь ссылки на статьи о работе со стэком и очередью.


 
Digitman ©   (2003-11-29 14:10) [1]

что значит "работа" ? подробней


 
Nikolay M. ©   (2003-11-29 14:21) [2]

http://algolist.manual.ru/ds/basic/index.php
это, наверное, имеется ввиду?


 
Владислав ©   (2003-11-29 14:53) [3]

Fox Mulder... Mox Fulder... Mox Fluder...

Удивительно...

Так это... В простеньких книженциях по паскалю это есть. Либо по С.


 
Mox Fulder   (2003-11-29 16:13) [4]

"Работа" - это просто запихнутьв стэк или очередь переменную и взять оттуда. На тэстах с большим количеством данных в некоторых задачах массивы не выдерживают вроде... Да и в графах используется...


 
Anatoly Podgoretsky ©   (2003-11-29 16:15) [5]

Не может быть, тем более стеки часто именно на массивах реализуют.


 
Mox Fulder   (2003-11-29 16:19) [6]

Anatoly Podgoretsky © (29.11.03 16:15) [5]
Сорри, я не правильно выразился... Не хватает памяти. Я имел в виду, что приходится использовать динамическую память.


 
Mox Fulder   (2003-11-29 16:24) [7]

Я здесь пытался что-то изобразить - не выходит
На строке
dispose(t);
в процедуре Get выдаёт Invalid pointer operation.


Type
Stack=^TStack;
TStack=record
Inf:integer;
Link:Stack;
End;
Var
Top:Stack;
{--------------------------------------------}
Procedure Add(x:integer);
Var p:Stack;
Begin
New(p);
p^.inf:=x;
if top<>nil then
p^.link:=top else
p^.link:=nil;
top:=p;
End;
{--------------------------------------------}
Procedure Get(var x:integer);
Var t:Stack;
begin
if top<>nil then
begin
new(t);
x:=top^.inf;
t:=top^.link;
top:=t;
dispose(t);
end;
end;


 
Anatoly Podgoretsky ©   (2003-11-29 16:31) [8]

Mox Fulder (29.11.03 16:19) [6]
Динамическая память или статическая не играет роли, первое требует больще памяти. Но у тебя не совсем стек, это связаный список.
В Дельфи есть класс TStack не нужлы его повтороно изобретать и есть очередь TQueue.


 
Mox Fulder   (2003-11-29 16:48) [9]

Anatoly Podgoretsky © (29.11.03 16:31) [8]
Дело в том, что мне это нужно для Паскаля. А пишу здесь потому, что некуда больше обратиться.
Кстати, а в каком модуле в делфи этот класс описан?


 
Anatoly Podgoretsky ©   (2003-11-29 16:52) [10]

Ну так все равно это не стек


 
Anatoly Podgoretsky ©   (2003-11-29 16:54) [11]

Правда есть определенная иммитация.


 
Mox Fulder   (2003-11-29 17:01) [12]

Anatoly Podgoretsky © (29.11.03 16:54) [11]
...Дык всё-таки почему не работает? Вы поняли что я здесь хотел сделать(даже если это не стек)? Подскажите, плз...


 
Anatoly Podgoretsky ©   (2003-11-29 17:19) [13]

Неохота анализировать почему, но есть маленький совет, стоит назвать процедуры доступа общепринятыми именами:

Push, Pop, Peek.


 
Anatoly Podgoretsky ©   (2003-11-29 17:23) [14]

Стеки, очереди, списки и работа с ними очень хорошо описана в литературе, особенно в старой, поскольку их часто брали как примеры для программирования. Ну и как сказал в Дельфи есть два класса, но вероятно они мало применимы в старом Паскале.


 
Думкин ©   (2003-11-29 18:06) [15]

в книге Баккнелла - Фундаментальные алгоритмы и структуры данных в Дельфи - сие описано.
Если лом покупать книгу - можно скачать примеры с сайта издательства.



Страницы: 1 вся ветка

Текущий архив: 2003.12.23;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.017 c
3-75100
Alexey V.
2003-11-29 18:20
2003.12.23
Работа с Делфи7 в WinXP


1-75214
scorpi
2003-12-11 07:33
2003.12.23
Перевод строки в код


6-75298
ChayNik
2003-10-27 04:17
2003.12.23
Помогите Чайнику


1-75266
albatros
2003-12-10 11:24
2003.12.23
После выполнения фрагмента алгоритма


14-75357
Style
2003-11-28 20:46
2003.12.23
Как часто вы смотрете на клавиатуру?? :)