описывается следующим образом:
· 1). Восходящий обход левого поддерева;
· 2). Восходящий обход правого поддерева;
· 3). Обработка корневой вершины.
Текст программы процедуры рекурсивного обхода (r_Postorder) демонстрируется в програмном примере 6.9.
{ ==== Программный пример 6.9. ===== }
(*--------- Рекурсивное выполнение нисходящего обхода -----*)
Procedure r_Postorder (t: TreePtr);
Begin
if t = nil then begin writeln('Дерево пусто'); exit; end;
if t^.left <> nil then r_Postorder (t^.left);
if t^.right <> nil then r_Postorder (t^.right);
(*-------------- Обработка данных звена --------------*)
................................
End; { r_Postorder }
Если в рассмотренных выше процедурах поменять местами поля left и right, то получим процедуры обратного нисходящего, обратного смешанного и обратного восходящего обходов.