Стек
Стек - структура данных, предназначенная для добавления элемента в начало последовательности и извлечения его оттуда.
Листинг Delphi
const StackLength = 1000;
type StackData = integer;
Stack = object
public
S : array[1..StackSize] of StackData;
top : integer;
public
constructor Create;
function Empty : boolean;
procedure Push(x : StackData);
function Pop : StackData;
end;
implementation
constructor Stack.Create; // Создание стека
begin
top := 0;
end;
function Stack.Empty : boolean; // Пуст ли стек?
begin
Result := (top = 0);
end;
procedure Stack.Push(x : StackData); // Добаление элемента
begin
inc(top);
S[top] := x;
end;
function Stack.Pop : StackData; // Извлечение и просмотр первого элемента
begin
if Empty
then (* UNDERFLOW *)
Result := 0
else begin
dec(top);
Result := S[top+1];
end;
end;
08.12.2007, 15:49
По всем вопросам обращаться: rumterg@gmail.com