第1个回答 2020-04-02
标准的答案!首先要明确前序,中序和后序的遍历顺序:
前序:父节点,左子节点,右子节点;
中序:左子节点,父节点,右子节点;
后序:左子节点,右子结点,父节点;
明确之后,首先根据前序遍历,确定整个二叉树的根节点(前序的第一个节点);再通过中序遍历,可以直接根据根节点将整个二叉树分为左右两颗子树。这时再逐步根据前序和中序顺序,不难画出整个二叉树。进而可以写出后序遍历序列了。
例:已知某二叉树先序遍历序列是:ABCDEFH,中序遍历序列是:BDCEAHF,写出后序遍历序列。
由前序可知,该树根节点为A;
由中序及根节点可知,B,D,C,E在根节点的左子树上H,F在根节点的右子树上;
再逐步分析各子树,可得该树为:
A
╱╲
BF
╲╱
CH
╱╲
DE
后序为:DECBHFA