Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Нахождение максимального ключа в бинарном дереве?

Автор: ralf 28.04.2005 17:18

Люди добрые помогите с таким заданием:

Код
Написать процедуру, отыскивающую максимальный ключ (значение информационного поля) в бинарном дереве!

Автор: volvo 28.04.2005 17:40

ralf, бинарное дерево является упорядоченным, поэтому надо идти все время направо, пока не встретишь нулевой указатель next... Этот лист и будет содержать максимальное значение...

Автор: ralf 28.04.2005 17:50

Не подскажешь как это исполнить в процедуре?

Автор: volvo 28.04.2005 17:57

Ну, это смотря как задается дерево. Но вообще-то вот так:

function find_max(tree: ptree): ptree;
begin
if tree <> nil then
while tree^.right <> nil do tree := tree^.right;
find_max := tree;
end;

в результате функция вернет указатель на лист с максимальным значением...

Автор: ralf 28.04.2005 18:08

Да ... интересно получилось, сейчас буду переделывать под конкретные деревья!!! А так суть понял...!!!