二叉树---(3)前序遍历,中序遍历,后序遍历
2017-11-15 11:05
344 查看
很多朋友在刚开始接触二叉树时,对前序遍历,中序遍历,后序遍历这三个遍历方式不太了解,很多博客中,上来就是实现方式,并没有清晰的阐述这三种遍历的步骤和顺序,这里记录一下。
所谓遍历(Traversal)是指沿着某条搜索路线,依次对树中每个结点均做一次且仅做一次访问。访问结点所做的操作依赖于具体的应用问 题。 遍历是二叉树上最重要的运算之一,是二叉树上进行其它运算之基础。
按照根节点位置的不同分为前序遍历,中序遍历,后序遍历。
前序遍历:根节点->左子树->右子树
中序遍历:左子树->根节点->右子树
后序遍历:左子树->右子树->根节点
注意:在做前序遍历时,左右子树也是按照前序遍历的顺序,
同理,在做中序遍历时,左右子树也是按照中序遍历的顺序,
同理,在做后序遍历时,左右子树也是按照后序遍历的顺序。
例1:求下面树的三种遍历
前序遍历:abdefgc
中序遍历:debgfac
后序遍历:edgfbca
例2:求下面树的三种遍历
前序遍历:
A B D I J E K L Q C F M N G O P
中序遍历
I D J B K E Q L A M F N C O G P
后序遍历
I J D K Q L E B M N F O P G C A
所谓遍历(Traversal)是指沿着某条搜索路线,依次对树中每个结点均做一次且仅做一次访问。访问结点所做的操作依赖于具体的应用问 题。 遍历是二叉树上最重要的运算之一,是二叉树上进行其它运算之基础。
按照根节点位置的不同分为前序遍历,中序遍历,后序遍历。
前序遍历:根节点->左子树->右子树
中序遍历:左子树->根节点->右子树
后序遍历:左子树->右子树->根节点
注意:在做前序遍历时,左右子树也是按照前序遍历的顺序,
同理,在做中序遍历时,左右子树也是按照中序遍历的顺序,
同理,在做后序遍历时,左右子树也是按照后序遍历的顺序。
例1:求下面树的三种遍历
前序遍历:abdefgc
中序遍历:debgfac
后序遍历:edgfbca
例2:求下面树的三种遍历
前序遍历:
A B D I J E K L Q C F M N G O P
中序遍历
I D J B K E Q L A M F N C O G P
后序遍历
I J D K Q L E B M N F O P G C A
相关文章推荐
- 二叉树的遍历(前序遍历、中序遍历、后序遍历)
- 二叉树的创建、前序遍历、中序遍历、后序遍历
- 二叉树的创建、前序遍历、中序遍历、后序遍历
- 二叉树的遍历,二叉树的创建、前序遍历、中序遍历、后序遍历 (转)
- 二叉树的创建、前序遍历、中序遍历、后序遍历
- 二叉树的创建、前序遍历、中序遍历、后序遍历
- 二叉树系列(1)已知二叉树的中序遍历和前序遍历,如何求后序遍历
- 已知二叉树的中序遍历和后序遍历,如何求前序遍历
- C++实现链式二叉树,操作包括初始化二叉树、前序遍历、中序遍历、后序遍历、层次遍历
- 二叉树相关操作(前序遍历,中序遍历,后序遍历,层次序遍历等)递归和非递归实现
- 二叉树的创建、前序遍历、中序遍历、后序遍历
- 扩展二叉树 建立 以及 前序遍历 中序遍历 后序遍历 的非递归算法
- 二叉树的创建、前序遍历、中序遍历、后序遍历
- 二叉树的创建、前序遍历、中序遍历、后序遍历
- 二叉树的中序遍历和前序遍历,如何求后序遍历
- 二叉树的遍历 前序遍历 中序遍历 后序遍历
- C++数据结构--二叉树的建立,前序遍历,中序遍历和后序遍历
- 根据前序遍历、中序遍历构建二叉树,并后序遍历输出。
- 已知二叉树的前序遍历中序遍历,求后序遍历
- 二叉树的创建、前序遍历、中序遍历、后序遍历