243
правки
Изменения
→Восстановление дерева по результату обхода preorderTraversal
Разберём алгоритм на примере последовательности <tex>\mathtt{8}</tex> <tex>\mathtt{2}</tex> <tex>\mathtt{1}</tex> <tex>\mathtt{4}</tex> <tex>\mathtt{3}</tex> <tex>\mathtt{5}</tex>.
Будем выделять красным цветом вершины, рассматриваемые на каждом шаге.
{| style="background-color:#CCC;margin:0.5px"
!style="background-color:#EEE"| Состояние
|style="background-color:#FFF;padding:2px 10px"| ''Первая вершина всегда будет корнем, так как вывод начинался с него.''
|-
|style="background-color:#FFF;padding:2px 10px"| <span style="color:blackred">'''8 2 1'''</span> 4 3 5
|style="background-color:#FFF;padding:2px 10px"| Находим убывающую подпоследовательность.
|style="background-color:#FFF;padding:2px 10px"| ''---.''