二叉树的遍历规则(前序遍历后序遍历中序遍历)

Posted 红星微学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二叉树的遍历规则(前序遍历后序遍历中序遍历)相关的知识,希望对你有一定的参考价值。


树的遍历顺序大体分为三种:前序遍历(先根遍历、先序遍历),中序遍历(中根遍历),后序遍历(后根遍历)。

如图所示二叉树:

前序遍历:前序遍历可以记为根左右,若二叉树为空,则结束返回。

前序遍历的规则:

(1)访问根节点

(2)前序遍历左子树

(3)前序遍历右子树

这里需要注意:在完成第2,3步的时候,也是要按照前序遍历二叉树的规则完成。

前序遍历的输出结果:ABDECF


中序遍历:中序遍历可以记为左根右,也就是说在二叉树的遍历过程中,首先要遍历二叉树的左子树,接着遍历根节点,最后遍历右子树。

同样,在二叉树为空的时候,结束返回。

中序遍历的规则:

(1)中序遍历左子树

(2)访问根节点

(3)中序遍历右子树

注意:在完成第1,3步的时候,要按照中序遍历的规则来完成。

中序遍历的输出结果:DBEAFC


后序遍历:后序遍历可以记为左右根,也就是说在二叉树的遍历过程中,首先按照后序遍历的规则遍历左子树,接着按照后序遍历的规则遍历右子树,最后访问根节点。

在二叉树为空的时候,结束返回。

后序遍历二叉树的规则:

(1)后序遍历左子树

(2)后序遍历右子树

(3)访问根节点

注意:在完成1,2步的时候,依然要按照后序遍历的规则来完成。

后序遍历的输出顺序:DEBFCA


2017年第7题、表达式a*(b+c)*d的后缀表达式是( ) 
A、abcd*+* 
B、abc+*d* 
C、a*bc+*d 
D、b+c*a*d 
答案:B 

题目给的是中序遍历

以上是关于二叉树的遍历规则(前序遍历后序遍历中序遍历)的主要内容,如果未能解决你的问题,请参考以下文章

二叉树前序,中序,后序遍历迭代实现详解

二叉树遍历问题(前序,中序,后序)

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

二叉树的前序中序后序遍历顺序详解

遍历问题 codevs

二叉树的前序中序后序遍历相互求法