数据结构之二叉树的遍历:

一.二叉树—特殊树(基础知识)
(一)概念:
一个二叉树要么为空,要么包含一个根节点,外加一个左子树和右子树,每一个字数都是二叉树
(二)二叉树的形状:
不平衡二叉树、完美平衡二叉树、完全二叉树、满二叉树;
一般来说二叉树越平衡,访问、插入、删除的性能也越高;
(三)二叉树的遍历;
1,前序遍历:
根–》左–》右:可以确定二叉树的根(第一个)
2,中序遍历:
左–》根–》右:可以确定二叉树的左子树和右子树
3,后序遍历:
左–》右–》根:可以确定二叉树的根(最后一个)
3,层序遍历:
从0层级开始,每一个层级从左—》右的顺序访问节点
遇到的问题:给定一个后序遍历和一个中序遍历,求前序遍历:
解决方法:在后序遍历中确定根节点,中序遍历中确定左右子树:
如:
某二叉树中序序列为A,B,C,D,E,F,G,后序序列为B,D,C,A,F,G,E则前序序列是()
解析:
第一步:在后序遍历确定跟节点:E;
第二部:在中序遍历确定左右子树:ABCD E FG;
第四部:在后序遍历确定跟节点:A G;
第五部:在中序遍历确定左右子树:A BCD E F G;
第六部:在后序遍历确定跟节点:C;
第七部:在中序遍历确定左右子树:A无左子树;G无右子树

猜你喜欢

转载自blog.csdn.net/charuiyu/article/details/85269828