由二叉树的遍历序列返回二叉树_第1页
由二叉树的遍历序列返回二叉树_第2页
由二叉树的遍历序列返回二叉树_第3页
由二叉树的遍历序列返回二叉树_第4页
由二叉树的遍历序列返回二叉树_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、由二叉树的遍历序列返回二叉树由二叉树的遍历序列返回二叉树 班级:班级: 软件工程六班软件工程六班 姓名:姓名: 马马 盛盛 国国 学号:学号:140120010168 遍历:按某种搜索路径访问二叉树的每个结点,而且每个结点仅被访问一次。访问:访问是指对结点进行各种操作的简称,包括输出、查找、修改等等操作。遍历是各种数据结构最基本的操作,许多其它的操作可以在遍历基础上实现。 1.0 二叉树的遍历方法 “遍历”是任何类型均有的操作:线性结构的遍历:只有一条搜索路径(因为每个结点均只有一个后继);非线性结构的遍历:二叉树是非线性结构,则存在如何遍历即按什么样的搜索路径遍历的问题。 如何访问二叉树的每

2、个结点, 而且每个结点仅被访问一次?1.0.1 二叉树的遍历概念 二叉树由根、左子树、右子树三部分组成 二叉树的遍历可以分解为:访问根,遍历左子树和遍历右子树令:L:遍历左子树 T:访问根结点 R:遍历右子树 有六种遍历方法: T L R,L T R,L R T, T R L,R T L,R L T 约定先左后右,有三种遍历方法: T L R、L T R、L R T ,分别称为 先序遍历、中序遍历、后序遍历 A F G E D C B1.0.2 二叉树的遍历方法 若二叉树非空 (1)访问根结点; (2)先序遍历左子树; (3)先序遍历右子树; 先序遍历序列:A,B,D,E,G,C,F A F

3、G E D C B 先序遍历右图所示的二叉树 (1)访问根结点A (2)先序遍历左子树:即按 T L R 的顺序遍历左子树 (3)先序遍历右子树:即按 T L R 的顺序遍历右子树图示p先序遍历(T L R)例1.1.1 二叉树的遍历方法先序遍历 void prev (BinTree T) if (T) visit(T-data); prev(T-lch); prev(T-rch); 先序序列为 + * a b c / d e称为前缀表达式 e a + * / d / -T b c a*(b-c)+d/ep先序遍历递归算法1.1.2 二叉树的遍历算法先序遍历 d e c b f a + * /

4、 - - 先序遍历下图所示的二叉树 先序 -,+,a,*,b,-,c,d,/,e,f练习1.1.3 二叉树的遍历方法练习先序遍历若二叉树非空(1)中序遍历左子树(2)访问根结点(3)中序遍历右子树 中序遍历序列:中序遍历右图所示的二叉树 p中序遍历( L T R ) A F G E D C B,F例D,G,B,A,E,C1.2.1 二叉树的遍历方法中序遍历void Mid (BinTree T) if (T) Mid(T-lch); visit( T-data); Mid(T-rch); 中序序列为 a * b c+ d / e称为中缀表达式a*(b-c)+d/e e a + * / d /

5、-T b c p中序遍历递归算法 1.2.2 二叉树的遍历算法中序遍历 d e c b f a + * / - - 中序遍历下图所示的二叉树 中序 a,+,b,*,c,-,d,-,e,/,f练习 1.2.3 二叉树的遍历方法练习中序遍历若二叉树非空(1)后序遍历左子树(2)后序遍历右子树(3)访问根结点 后序遍历序列: D,G,E,B,F,C,A 后序遍历右图所示的二叉树 (1)后序遍历左子树:即按 L R T 的顺序遍历左子树 (2)后序遍历右子树:即按 L R T 的顺序遍历右子树 (3)访问根结点A图示p后序遍历( L T R ) A F G E D C B例1.3.1 二叉树的遍历方法

6、后序遍历 void Post(BinTree T) if (T) Post(T-lch); Post(T-rch); visti( T-data); 后序序列为 a b c * d e / + 称为后缀表达式a*(b-c)+d/e e a + * / d / -T b c p后序遍历递归算法1.3.2 二叉树的遍历算法后序遍历 d e c b f a + * / - - 后序遍历下图所示的二叉树 后序 a,b,c,d,-,*,+,e,f,/,-练习1.3.3 二叉树的遍历方法练习后序遍历p按层遍历 A F G E D C B 层次遍历序列: A,B,C,D,E,F,G1.4.1 二叉树的遍历方法按层遍历p按层遍历按层遍历引入了队列作为辅助工具。算法思想为:(1)将二叉树根入队列;(2)将队头

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论