Files
java-interview-lab/binary-tree-traversals/output/10-construct-from-traversals.txt
T
2026-11-06 21:43:33 +05:30

22 lines
839 B
Plaintext

Constructing a tree from two traversals
=======================================
inorder : [4, 2, 5, 1, 6, 3]
preorder : [1, 2, 4, 5, 3, 6]
from inorder + preorder, one line per recursive call:
root 1 inorder slice [0..5] left size 3, right size 2
root 2 inorder slice [0..2] left size 1, right size 1
root 4 inorder slice [0..0] left size 0, right size 0
root 5 inorder slice [2..2] left size 0, right size 0
root 3 inorder slice [4..5] left size 1, right size 0
root 6 inorder slice [4..4] left size 0, right size 0
result : 1(2(4,5),3(6,-))
postorder of the result: [4, 5, 2, 6, 3, 1]
from inorder + postorder the same tree comes back: 1(2(4,5),3(6,-))
two different trees with the same preorder AND postorder:
1(2,-) preorder [1, 2] postorder [2, 1]
1(-,2) preorder [1, 2] postorder [2, 1]