1、有一个二叉查找树,存储者字符’A’,’B’,’C’,’D’,’E’,’F’,’G’,’H’,下面哪个结果是后序树遍历结果
A. ADBCEGFH
B. BCAGEHFD
C. BCAEFDHG
D. BDACEFHG
我的结题思路是将每个答案按照后序的遍历方法把二叉树存储数据的结构还原,看是否满足二叉树的性质。
二叉树的性质:
1、左子树的值小于根节点,右子树的值大于根节点
我们直接看C答案:
根据二叉查找树的后序遍历的方法是LRD,先左子树,再右子树,最后是根节点,也就是说排序的最后是根节点
从答案C可以看出 G是根节点 左子树分为BCAEFD ,右子树为H,再分左子树 BCAEFD ,此时D为根节点,左子树为BCA,右子树为EF,再分左子树,A为根节点,左子树为空,右子树为BC,将右子树为EF的继续分,根节点为F,左子树为E,右子树为空,再对BC子树进行分,C为根节点B为左子树,右子树为空。
最后的图形是
G
左 D 右H
左 A 右 F
左 () 右 C 左 E 右 ()
左B