如果二叉搜索树的前序是[p,a,r,s],如何识别[r,s,a,p]是按序还是按后序?
如果是post-order,如何找出是(左,右,根)还是(右,左,根)?
最佳答案
如果预序遍历是[p,a,r,s],那么p必须是根。因为它是一个二叉搜索树,所以a必须是左子树,r和s必须在右子树中。给你两棵可能的树:
P P
A R A S
S R
第二棵树的反向后序遍历将提供序列[r,s,a,p]。