Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.11.2010, 17:49   #11
Sianessa
Форумчанин
 
Регистрация: 18.01.2009
Сообщений: 144
По умолчанию

Кто-нибудь, помогите пожалуйста написать операции с деревом моим:

- проверить, дерево пусто/не пусто;
- добавить элемент в дерево;
- удалить элемент из дерева;
- найти элемент с заданным значением;
- опустошить дерево.
Sianessa вне форума Ответить с цитированием
Старый 26.11.2010, 20:45   #12
Sianessa
Форумчанин
 
Регистрация: 18.01.2009
Сообщений: 144
По умолчанию

Ну подскажите кто-нибудь хотя бы одну операцию...
Sianessa вне форума Ответить с цитированием
Старый 26.11.2010, 21:00   #13
Z1000000
Форумчанин
 
Регистрация: 04.05.2010
Сообщений: 495
По умолчанию

Цитата:
- проверить, дерево пусто/не пусто;
- добавить элемент в дерево;
- удалить элемент из дерева;
- найти элемент с заданным значением;
- опустошить дерево.
Да чего тут подсказывать.
1. Если корень = nil дерево пустое
2. Добавление элемента у тебя уже есть - функция Search
4. Поиск элемента она же

Надо сделать только удаление элемента и опустошение.
Нажми на весы, поставь +
Для благодарностей : WebMoney WMR R252732729948
Z1000000 вне форума Ответить с цитированием
Старый 26.11.2010, 23:57   #14
Sianessa
Форумчанин
 
Регистрация: 18.01.2009
Сообщений: 144
По умолчанию

Z1000000, хммм, и правда, спасибо что надоумили...
Вот определение "пустоты" уже сделала...

Код:
procedure TForm1.Button3Click(Sender: TObject);
var node: PNode;

begin
  if node=nil  then
ShowMessage('Дерево пустое')
else
ShowMessage('Дерево не пустое');
end;
Сижу сейчас над добавлением элемента...
Sianessa вне форума Ответить с цитированием
Старый 27.11.2010, 14:51   #15
Sianessa
Форумчанин
 
Регистрация: 18.01.2009
Сообщений: 144
По умолчанию

Кто-нибудь, помогите пожалуйста сделать поиск элемента, удаление элемента и опустошение дерева!!! Я уже не знаю как...

Я написала цикл для поиска, но как к дереву привязать - не знаю :

Код:
procedure TForm1.Button5Click(Sender: TObject);
var x,i:integer;
t:array of integer;

begin
SetLength(t, 640);
x:=StrToInt(Edit1.Text);
For i:=0 to 640 do
begin
if t[i]=x then
ShowMessage('Дерево пустое');
end;
end;
end.

Последний раз редактировалось Sianessa; 27.11.2010 в 14:55.
Sianessa вне форума Ответить с цитированием
Старый 27.11.2010, 19:16   #16
Sianessa
Форумчанин
 
Регистрация: 18.01.2009
Сообщений: 144
По умолчанию

Помогите хоть кто-нибудь(((
Sianessa вне форума Ответить с цитированием
Старый 28.11.2010, 00:10   #17
Z1000000
Форумчанин
 
Регистрация: 04.05.2010
Сообщений: 495
По умолчанию

Код:
// Опустошить дерево
procedure KillTree ( var node : PNode );
begin
if node^.pLeft <> nil then
 begin
 KillTree(node^.pLeft);
 end;
if node^.pRight <> nil then
 begin
 KillTree(node^.pRight);
 end;
dispose(node);
end;
Нажми на весы, поставь +
Для благодарностей : WebMoney WMR R252732729948
Z1000000 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Двоичное дерево (С++) Dead Romantic Помощь студентам 0 30.05.2010 23:52
Двоичное дерево yagluboko Помощь студентам 0 17.04.2010 11:28
Двоичное дерево на си++ fesked Помощь студентам 0 22.10.2009 23:44
двоичное дерево s20 Помощь студентам 0 22.10.2009 03:51
Двоичное дерево afeg Паскаль, Turbo Pascal, PascalABC.NET 0 19.12.2008 14:49