已知一棵二叉树的先序遍历序列为: A B D E H C F G ,中序遍历序列为: D B H E A F C G , 则该二叉树的后序遍历序列是( )。
A:D H E B F G C A
B:D E H B F G C A
C:H D E B F C G A
D:D H E B G F C A
正确答案:A
答案解析
根据先序遍历序列确定根节点,结合中序遍历序列划分左右子树。先序序列首元素为当前子树根节点,在中序序列中定位该节点,其左侧为左子树中序序列,右侧为右子树中序序列。依据左右子树节点数量,从先序序列中分离出对应的左、右子树先序序列。递归构建左、右子树结构。当子树为空或仅含一个节点时递归终止。后序遍历顺序为:左子树节点、右子树节点、根节点。按此顺序合并各子树的后序遍历结果,形成整棵树的后序遍历序列。
试卷来源:202606 CCF-GESP编程能力等级认证Python六级真题