|
Вопрос # 4 871/ вопрос открыт / |
|
Приветствую, уважаемые эксперты!
Помогите пожалуйста! Есть программа, которая в стеке нужный нам элемент помещает в конец стека, а нужно В НАЧАЛО!!! Что нужно исправить?
Приложение: Переключить в обычный режим- uses crt;
-
- Type
- EXST = ^T;
- T = record
- Data : integer;
- Next : EXST;
- end;
- Var
-
-
- procedure vivod(var s:EXST {n:integer});
-
- begin
-
- while s<>nil
- do begin
- writeln(S^.data);
- S:=S^.next;
- end;
- end;
-
- Procedure writeStack(Var u : EXST; Slovo : integer);
- Var
- x : EXST;
- Begin
- new(x);
- x^.Data := Slovo;
- x^.Next := u;
- u := x;
- End;
-
- Procedure f( var head:EXST; del:integer);
- var prev,s,s1:EXST;
- begin
- s:=head;
- while (s^.data<>del) and (s^.next<>nil) do s:=s^.next;
- if s^.data=del then
- begin
- new(s1);
- if head=nil then begin
-
- end;
- if s=head then head:=s^.next else
- if s=head^.next then head^.next:=s^.next else
- begin
- prev:=head^.next;
- while (prev^.next<>S) and (prev^.next<>nil) do prev:=prev^.next;
- if prev^.next=nil then begin
-
- end;
- prev^.next:=S^.next;
- end;
-
-
- s1^.data:=del;
- s1^.next:=head;
- head:=s1;
-
-
- Dispose(s);
- end
- else
- head:=head;
- end;
-
- begin
- writeStack(stack1,3);
- writeStack(stack1,9);
- writeStack(stack1,5);
- writeStack(stack1,11);
- writeStack(stack1,6);
- writeStack(stack1,7);
- writeStack(stack1,6);
- writeStack(stack1,7);
- writeStack(stack1,7);
-
- f(stack1,6);
- vivod(stack1);
- end.
-
 |
Вопрос задала: Иринчик (статус: Посетитель)
Вопрос отправлен: 29 декабря 2010, 19:35
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: amigo
Здравствуйте, Иринчик!
в процедуре WriteStack подправить малясь
procedure WriteStack( var u:EXST; Slovo:Integer);
var
oldhead:EXST;
begin
oldhead:=u;
new(u);
u^.Data:=Slovo;
u^.next:=oldhead;
end;
 |
Ответ отправил: amigo (статус: 1-ый класс)
Время отправки: 29 декабря 2010, 19:59
|
Мини-форум вопроса
Всего сообщений: 2; последнее сообщение — 30 декабря 2010, 08:10; участников в обсуждении: 2.
|
amigo (статус: 1-ый класс), 29 декабря 2010, 20:10 [#1]:
Кстати больше на список похоже че мна стэк, стэк лучше с пом. массива реализовывать. Ахо А.В., Хопкрофт Д.Э., Ульман Д.Д. — Структуры данных и алгоритмы, рекомендую почитать, там много АТД, начиная со списков и кончая хэш-таблицами
|
|
min@y™ (статус: Доктор наук), 30 декабря 2010, 08:10 [#2]:
Я ж тебе написал прогу по стекам, неужели не понравилась?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|