版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据结构——遍历二叉树主讲人:修小草点击播放即将开始主要内容:connectivism遍历二叉树问题遍历二叉树的方法复杂度分析习题与总结connectivism
按照某条搜索路径访问树中的每一个结点,使得每个结点均被访问一次,且仅被访问一次。遍历二叉树问题:
遍历对线性结构很容易解决;
遍历对二叉树则略微复杂。遍历二叉树问题connectivism遍历二叉树问题connectivism二叉树遍历的基本方法:从二叉树的定义知,一棵二叉树由三部分组成:根结点、左子树和右子树。若规定D,L,R分别代表“访问根结点”、“遍历根结点的左子树”和“遍历根结点的右子树”,根据遍历算法对访问根结点处理的位置,遍历整个二叉树就有6种方案:
DLR、LDR、LRDDRL、RDL、RLD遍历二叉树的方法connectivism后(根)序遍历中(根)序遍历先(根)序遍历基本方法3遍历二叉树的方法connectivismFirst先序遍历二叉树
先序遍历的操作定义为:
若二叉树为空,则空操作;否则1、访问根结点;2、先序遍历左子树;3、先序遍历右子树。根、左、右遍历二叉树的方法connectivismFirst先序遍历二叉树遍历二叉树的方法
voidPreOrder(BiTreeNode*t,voidVisit(DataTypeitem))/*先序遍历二叉树t,访问操作为Visit()函数*/
{if(t!=NULL){Visit(t->data); PreOrder(t->leftChild,Visit); PreOrder(t->rightChild,Visit);}}connectivismFirst先序遍历二叉树遍历二叉树的方法先序序列:-+a*b–cd/ef前缀表示(波兰式)前缀表示(波兰式)connectivismSecond中序遍历二叉树
中序遍历的操作定义为:若二叉树为空,则空操作;否则1、中序遍历左子树;2、访问根节点;3、中序遍历右子树。左、根、右遍历二叉树的方法connectivism遍历二叉树的方法Second中序遍历二叉树voidInOrder(BiTreeNode*t,voidVisit(DataTypeitem))/*中序遍历二叉树t*/{if(t!=NULL) {InOrder(t->leftChild,Visit); Visit(t->data); InOrder(t->rightChild,Visit); }}connectivism遍历二叉树的方法中序序列:a+b*c–d–e/f中缀表示Second中序遍历二叉树connectivismThird后序遍历二叉树
后序遍历的操作定义为:若二叉树为空,则空操作;否则1、后序遍历左子树;2、后序遍历右子树;3、访问根节点。左、右、根遍历二叉树的方法connectivismThird后序遍历二叉树遍历二叉树的方法voidPostOrder(BiTreeNode*t,voidVisit(DataTypeitem))/*后序遍历二叉树t*/{if(t!=NULL) {PostOrder(t->leftChild,Visit); PostOrder(t->rightChild,Visit); Visit(t->data); }}connectivism遍历二叉树的方法后序序列:abcd–*
+ef/-后缀表示(逆波兰式)Third后序遍历二叉树connectivismFour层序遍历二叉树层序遍历的要求是:按二叉树的层序次序(即从根结点层至叶结点层),同一层中按先左子树再右子树的次序遍历二叉树。层序遍历的特点:在所有未被访问结点的集合中,排列在已访问结点集合中最前面结点的左子树的根结点将最先被访问,然后是该结点的右子树的根结点。这样,如果把已访问的结点放在一个队列中,那么,所有未被访问结点的访问次序就可以由存放在队列中的已访问结点的出队列次序决定。因此可以借助队列实现二叉树的层序遍历。遍历二叉树的方法connectivism时间复杂度
遍历二叉树算法的基本思想是访问结点,无论是哪一种方法,对含有n个结点的二叉树,其时间复杂度均为O(n)。空间复杂度
遍历二叉树算法所需要的辅助空间为遍历过程中栈的最大容量,即树的深度,最坏情况下为n,则空间复杂度也为O(n)。复杂度分析connectivism习题已知一棵二叉树的先序遍历序列为:abdgcefh,中序遍历序列为:dgbaechf,画出该二叉树,并写出其后序遍历序列。后序序列:gdbehfcaconnectivism中序遍历二叉树后序遍历
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 河北省承德市隆化县存瑞中学2025届高考英语全真模拟密押卷含解析
- 2025届湖北省华中师大附中高三下学期第六次检测英语试卷含解析
- 2025届湖南省长沙市一中、湖南师大附中高考英语四模试卷含解析
- 2025届浙江宁波市余姚中学高考英语五模试卷含解析
- 2024年某市商业地产开发投资与合作合同
- 2024版体育赛事广告装修赞助合同3篇
- 2024年度商铺租赁合同范本:创新租赁模式3篇
- 2024年度土地及房屋买卖合同(含抵押权设立)3篇
- 2024年生态公园树木种植与生态旅游开发承包合同3篇
- 2024年度防火墙系统升级与维护合同2篇
- 建筑施工安全检查标准JGJ59-2011
- 古代小说戏曲专题-形考任务2-国开-参考资料
- 运动是良医智慧树知到期末考试答案章节答案2024年成都师范学院
- 小学教育课件教案劳动与学科整合跨学科综合能力的培养
- 2023年山东省冬季普通高中学业水平考试英语试题及参考答案
- 软件体系结构实验报告(1)
- 《工艺流程题的解题指导》教学设计(教案)
- 宝洁麦克销售模式中文版
- 设计加热炉推料机传动装置 - 副本
- 桥梁专业T形桥梁毕业课程设计计算书(附构造图)
- 山东建设工程施工机械台班单价表
评论
0/150
提交评论