由前序和中序确定二叉树 数据结构中序和后序怎么画二叉树?

数据结构中序和后序怎么画二叉树?举个例子中序:dgbaechf //左根右后序:gdbehfca //左右根(1)确定根由后序得中序:(dgb)a(echf) 后序:(gdb

数据结构中序和后序怎么画二叉树?

举个例子

中序:dgbaechf //左根右

后序:gdbehfca //左右根

(1)确定根

由后序得

中序:(dgb)a(echf) 后序:(gdb)(ehfc)a

(2)确定左节点

由上已知,左节点没有有节点

(3)确定右节点

中序【(e)c(hf)】 后序:【(e)(hf)c】

确定整棵树为

---------a--------

------b-----c-----

---d-----e----f---

------g-----h-----

怎么根据二叉树的前序,中序,确定它的后序?

怎么根据二叉树的前序,中序,确定它的后序

二叉树遍历分为三类:前序遍历,中序遍历和后序遍历。

前序遍历:先访问根节点,然后遍历左子树,最后遍历右子树;并且在遍历左,右子树时,仍需先访问根节点,然后遍历左子树,最后遍历右子树。

中序遍历:先遍历左子树,然后访问根节点,最后遍历右子树;并且在遍历左,右子树时,仍先历左子树,然后访问根节点,最后遍历右子树。

后序遍历:先遍历左子树,然后遍历右子树,最后访问根节点;并且在遍历左,右子树时,仍先历左子树,然后遍历右子树,最后访问根节点。

由中序和后序可以知道B,C,D,E是左子树,H,F,G是右子树,A是根节点。因为后序遍历最后访问的是根节点。在左子树中C是D和B的子节点,E是C的子节点,在右子树中H是G和F的子节点,

A是根节点。最后可以推出前序序列是:AECDBHGF