二叉树前缀 中缀 后缀 遍历

有如下的二叉树:

 

 

1.前序遍历:中->左->右

对于当前节点,先输出该节点,然后输出他的左孩子,最后输出他的右孩子。以上图为例,递归的过程如下:

(1) :输出 -,接着左孩子;
(2) :输出 +,接着左孩子;
(3) :输出 A,左孩子为空,右孩子为空;
(4) :输出 B,左孩子为空,右孩子为空,此时 - 的左子树全部输出,接着 - 的右子树;
(5) :输出 /,接着左孩子;
(6) :输出 *,接着左孩子;
(7) :输出 C, 左孩子为空,右孩子为空;
(8) :   输出D,左孩子为空,右孩子为空;
(9) :输出 / 的右孩子;
(10):输出$, 接着左孩子;
(11):输出E,左孩子为空,右孩子为空;
(12):输出F,左孩子为空,右孩子为空,遍历结束。

 

 最后前缀表达式为:-+AB/*CD$EF

 

2.中序遍历:左->中->右

中缀序列(infix): A+B-C*D/E$F

 

3.后序遍历:左->右->中

 后缀序列(postfix):AB+CD*EF$/-

posted on 2021-09-28 18:55  wu.g.q  阅读(351)  评论(0编辑  收藏  举报

导航