ВУЗ:
Составители:
16
else { извлечь ветвь из стека и идти по ней }
Pop(start,T)
end
end {while}
end; { PrefOrd }
Упражнение 3.1. Описать нерекурсивную процедуру
а) инфиксного обхода дерева;
б) постфиксного обхода дерева.
3.2 Обработка узлов дерева
Рассмотрим двоичное дерево, узлы которого содержат в информационной
части целые числа. Назовем их элементами дерева.
Пример 3.5. Описать процедуру вывода дерева, выделяющую
каждый уро-
вень
h с помощью соответствующего отступа.
procedure PrintTree(T : Tree; h : integer );
var i : integer;
begin
if T <> nil then
begin
PrintTree (T^.R, h+1);
for i:=1 to h do write(‘ ‘);
writeln( T^.inf );
PrintTree (T^.L, h+1);
end
end; { PrintTree }
Здесь используется не инфиксный обход, а обход справа налево, чтобы
дерево не выдавалось в зеркальном отображении.
Страницы
- « первая
- ‹ предыдущая
- …
- 12
- 13
- 14
- 15
- 16
- …
- следующая ›
- последняя »