- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1.3.3 二叉树的遍历 所谓遍历(Traversal)是指沿着某条搜索路线,依次对树中每个结点均做一次且仅做一次访问。 访问结点所做的操作依赖于具体的应用问题。遍历是二叉树上最重要的运算之一,是二叉树上进行其它运算之基础。 ?“访问”的意思对结点施行某些操作。 例:输入结点的信息、修改结点的数据值等。(但要求这种访问不破坏它原来的数据结构) 小结 需要复习的知识点 ? 二叉树的遍历 ?遍历算法 ?中序遍历的递归算法定义 ?先序遍历的递归算法定义 ?后序遍历的递归算法定义 ?遍历序列 ? 遍历二叉树的执行踪迹 ?遍历序列 ?中序序列 ?先序序列 ?后序序列 2.遍历序列 (1)中序序列 中序遍历二叉树时,对结点的访问次序为中序序列。 例如,中序遍历上图所示的二叉树时,得到的中序序列为: D B A E C F (2)先序序列 先序遍历二叉树时,对结点的访问次序为先序序列。 例如,先序遍历上图所示的二叉树时,得到的先序序列为: A B D C E F (3)后序序列 后序遍历二叉树时,对结点的访问次序为后序序列。 例如,后序遍历上图所示的二叉树时,得到的后序序列为: D B E F C A 在搜索路线中,若访问结点均是第一次经过结点时进行的,则是前序遍历;若访问结点均是在第二次(或第三次)经过结点时进行的,则是中序遍历(或后序遍历)。只要将搜索路线上所有在第 一次、第二次和第三次经过的结点分别列表,即可分别得到该二叉树的前序序列、中序序列和后序序列。 A B C D E F 讲课内容、方法、步骤 二.二叉树到树、森林的转换 把二叉树转换到树和森林自然的方式是:若结点x是双亲y的左孩子,则把x的右孩子,右孩子的右孩子,…,都与y用连线连起来,最后去掉所有双亲到右孩子的连线。 例如图1-53(b)的森林就是由图1-52中(c)的二叉树转换成的。 (a) A B C D E F G H I E F A B C D G H I (b) 图1-53 将图1-52(c)中二叉树转换为森林 讲课内容、方法、步骤 1.3.5 哈夫曼树和哈夫曼编码 两个结点之间的路径长度是连接两结点的路径上的分支数。树的路径长度是从树的根结点到树中各个结点的路径长度之和。 由树的定义可知,从树的根结点到达树中每一结点有且仅有一条路径。若设树的根结点处于第0层,某一结点处于第l层,因为从根结点到达这个结点的路径上的分支条数恰为l,所以从根结点到其它各个结点的路径长度等于该结点所处的层次l。 例:如图a所示的二叉树中,根结点①到其它各结点①②③④⑤⑥⑦⑧的路径长度分别为0 , 1 , 1 , 2 , 2, 2 , 2 , 3。 该树的路径长度:PL = 0+1+1+2+2+2+2+3 = 13 如图b所示的二叉树的路径长度:PL = 0 + 1+1+2+2+2+3+3=14 ?二叉树的路径长度是以下数列前n项的和 0 , 1, 1, 2 , 2, 2 , 2 , 3, 3, 3, 3, 3 ,3, 3, 3, 4, 4, … 因为根据二叉树的性质, 第i 层的结点个数最多为2i, 而第i 层结点到根的路径 长度为i 。因此可知, 到根结点的路径长度 为l的结点最多有2l个。 讲课内容、方法、步骤 ?二叉树的五种基本形态 ?二叉树的顺序存储 ?二叉树的链式存储结构 ?作业:p78-84 (三、19,20,21,22,34 ) 讲课内容、方法、步骤 上述三种序列都是线性序列,有且仅有一个开始结点和一个终端结点,其余结点都有且仅有一个前趋结点和一个后继结点。为了区别于树形结构中前趋(即双亲)结点和后继(即孩子)结点的概念,对上述三种线性序列,要在某结点的前趋和后继之前冠以其遍历次序名称。例如,上图所示的二叉树中结点C,其前序前趋结点是D,前序后继结点是E;中序前趋结点是E,中序后继结点是F;后序前趋结点是F,后序后继结点是A。但是就该树的逻辑结构而言,C的前趋结点是A,后继结点是E和F。 三.二叉链表的构造 1. 基本思想 基于先序遍历的构造,即以二叉树的先序序列为输入来构造。要注意的是,在先序序列中必须加入虚结点以指示空指针的位置。 例如,建立上图所示二叉树,其输入的先序序列是:ABD∮∮ ∮ CE∮∮F∮∮。 讲课内容、方法、步骤 讲课内容、方法、步骤 2. 构造算
您可能关注的文档
- 软件工程基础 教学课件 作者 陆惠恩 第10章.ppt
- 软件工程基础 教学课件 作者 陆惠恩 第11章.ppt
- 软件工程基础 教学课件 作者 陆惠恩 第12章.ppt
- 软件工程基础教程 教学课件 作者 郭庚麒 主编 余明艳 杨丽 副主编 9 软件测试.ppt
- 软件工程基础教程(第二版) 教学课件 作者 方志刚 主编 张银南 副主编 第11章.ppt
- 软件工程基础与实例分析 教学课件 作者 王阿川 第01章 软件工程基础概述.ppt
- 软件工程基础与实例分析 教学课件 作者 王阿川 第02章 可行性分析.ppt
- 软件工程基础与实例分析 教学课件 作者 王阿川 第03章 需求分析.ppt
- 软件工程基础与实例分析 教学课件 作者 王阿川 第04章 结构设计.ppt
- 软件工程基础与实例分析 教学课件 作者 王阿川 第05章 详细设计.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)1-7.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)1-8.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)2-1.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)2-2.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)2-3.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)2-4.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)2-5.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)2-6.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)3-1.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)3-2.ppt
最近下载
- T∕CACM 1066.2-2018 中医治未病标准化工作指南 第2部分:标准体系.docx VIP
- 技术服务措施及保障措施方案.docx VIP
- 新媒体环境下的微博营销【文献综述】.doc VIP
- 2021钻床工考试-初级钻床工考试(精选试题).doc VIP
- 化工企业双重预防机制.pdf VIP
- (铁总计统〔2017〕177号 )中国铁路总公司关于进一步加强铁路建设项目征地拆迁工作和费用管理的指导意见.pdf VIP
- 深圳新桥街道万丰社区大朗山片区城市更新项目.pdf
- 中小学劳动教育课程如何创新与实施.docx VIP
- 大航海时代OL陆战技巧学习指南.docx
- 集中式山地光伏电站方阵区直流电缆敷设技术要求.pdf VIP
文档评论(0)