Форум: "Потрепаться";
Текущий архив: 2003.12.23;
Скачать: [xml.tar.bz2];
ВнизДинамическая память Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.008 c