




已阅读5页,还剩44页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第7章树Tree,不包含简单回路的连通图称为树,早在1857年英国数学家亚瑟凯莱就用树去计数某些类型的化合物。随后树已经被用来解决各种学科分支里的问题。,Chap7树,7.1树的概念/IntroductionofTrees7.2树的应用/ApplicationsofTrees7.3树的遍历/TreeTraversal7.4生成树和最小生成树/SpanningTreesandminimumSpanningTrees,有序根树常常用来保存信息,因此掌握访问有序根树的每个顶点以存取数据信息的算法非常必要系统地访问有序根树每个顶点的过程都称为遍历算法前序遍历Preordertraversal中序遍历Inordertraversal后序遍历Postordertraversal,7.3树的遍历TreeTraversal,定义1设T是带根r的有序根树。若T只包含r,则r是T的前序遍历。否则T1,T2,Tn是T里在r处从左到右的子树。前序遍历首先访问r。接着以前序来遍历T1,然后以前序来遍历T2,依此类推,直到以前序遍历了Tn为止。,7.3树的遍历TreeTraversal,例1前序遍历是以什么顺序访问图中有序根树里的顶点的?,7.3树的遍历TreeTraversal,abejknopfcdglmhi,定义2设T是带根r的有序根树。若T只包含r,则r是T的中序遍历。否则T1,T2,Tn是T里在r处从左到右的子树。中序遍历首先以中序来遍历T1,然后访问r,接着以中序遍历T2,以中序遍历T3,依此类推,直到以中序遍历了Tn为止。,7.3树的遍历TreeTraversal,例2中序遍历是以什么顺序访问图中有序根树里的顶点的?,7.3树的遍历TreeTraversal,jenkopbfaclgmdhi,定义3设T是带根r的有序根树。若T只包含r,则r是T的后序遍历。否则T1,T2,Tn是T里在r处从左到右的子树。后序遍历首先以后序来遍历T1,以后序遍历T2,然后以后序遍历Tn,最后访问r。,7.3树的遍历TreeTraversal,例3后序遍历是以什么顺序访问图中有序根树里的顶点的?,7.3树的遍历TreeTraversal,jnopkefbclmghida,7.3树的遍历TreeTraversal,7.3树的遍历TreeTraversal,7.3树的遍历TreeTraversal,以前序、中序、后序来列出有序根树的顶点的简易方法:首先从根开始围绕有序根树画一条曲线,沿着边移动;,7.3树的遍历TreeTraversal,前序:当曲线第一次经过一个顶点时,就列出这个顶点,中序:当曲线第一次经过一个树叶时,就列出这个树叶,当曲线第二次经过一个内点时就列出这个内点,后序:当曲线最后一次经过一个顶点而返回这个顶点的父母时,就列出这个顶点,练习:写出该有序根图按照前序、中序、后序遍历访问的顶点顺序,7.3树的遍历TreeTraversal,前序:abdefgc中序:dbfegac后序:dfgebca,中缀、前缀、后缀记法(Infix,prefix,postfixnotation),7.3树的遍历TreeTraversal,可用有序树来表示复杂的表达式包括算术表达式、复合命题、集合的组合等,表示算术表达式时内点表示运算,树叶表示变量或数字,每个运算都作用在它的子树上,例4表示表达式(x+y)2)+(x-4)/3)的有序根树是什么?,中缀、前缀、后缀记法(Infix,prefix,postfixnotation),7.3树的遍历TreeTraversal,对表示一个表达式的有序根树的中序遍历,产生原来的表达式,中缀、前缀、后缀记法(Infix,prefix,postfixnotation),7.3树的遍历TreeTraversal,对表示一个表达式的二叉树的中序遍历,产生原来的表达式中序遍历得出的中缀表达式有二义性为避免二义性,中序遍历时需加括号,这种表达式称为中缀形式,(x+y)/(x+3),(x+(y/x)+3,x+(y/(x+3),中序遍历?,x+y/x+3,中缀、前缀、后缀记法(Infix,prefix,postfixnotation),7.3树的遍历TreeTraversal,当以前序来遍历表达式的二叉树时,就获得它的前缀形式,又称波兰记法前缀记法下的表达式无二义性,前缀形式?,+xy2/-x43,已知前缀形式,如何获得对应的表达式呢?,从右向左地求对应的表达式当遇到一个运算,就对在这个运算右边紧邻的两个运算对象执行相应的运算每个运算结果是新的运算对象,例5前缀表达式+-*235/234的值是什么?,7.3树的遍历TreeTraversal,中缀、前缀、后缀记法(Infix,prefix,postfixnotation),7.3树的遍历TreeTraversal,当以后序来遍历表达式的二叉树时,就获得它的后缀形式,又称逆波兰记法后缀记法下的表达式无二义性,后缀形式?,xy+2x4-3/+,已知后缀形式,如何获得对应的表达式呢?,从左向右地求对应的表达式当两个运算对象后面接着一个运算时,就执行这个运算每个运算结果是新的运算对象,例6后缀表达式723*-493/+的值是什么?,7.3树的遍历TreeTraversal,7.3树的遍历TreeTraversal,例:求复合命题的有序根树,然后基于这个根树求这个表达式的前缀、中缀、后缀形式。,中缀形式:前缀形式:后缀形式:,三种记法特点总结,中缀记法的顺序与原表达式相同,但容易产生二义性,故需要加括号;前缀与后缀记法虽然与原表达式顺序不相同,但因无二义性,且不需要来回扫描,所以被广泛用于计算机的编译系统;,作业,P333:针对4题的图写出前序遍历、中序遍历和后序遍历的顶点顺序。8,11(a),Chap7树,7.1树的概念/IntroductionofTrees7.2树的应用/ApplicationsofTrees7.3树的遍历/TreeTraversal7.4生成树和最小生成树/SpanningTreesandminimumSpanningTrees,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,缅因州的道路系统图,高速公路部门怎么扫尽可能少的雪,使得州内任两个乡镇都有干净的道路?,确保任两个乡镇都有通路,且不能有多余的边。,求一个包含该图所有顶点的树(5条边),定义1生成树:无向简单图G=(V,E)的生成子图T是树,则称T为G的生成树/spanningtree。T=(V,E),EE,例1找出下面简单图的生成树。,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,证明:必要性:T是生成子图,包含G的所有顶点,T是树,T连通,则G连通。充分性:若G是连通的,1)若G无回路,则G本身是树,即生成树。2)若存在回路,去掉回路中任一边,不影响连通性,也不减少顶点.所有回路都移去一条边,剩下的子图包含所有顶点,又是无回路的连通图,即为生成树。,注:移去边时可随意,故生成树不唯一。,定理1无向简单图G=(V,E)存在生成树的充要条件是G是连通的。,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,为了从源计算机发送数据到多个接收计算机(一个子网),可以分别发送数据到每个计算机单点广播但单点广播是无效的,因为网络上存有发送的相同数据的多个副本,生成树的应用IP组播,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,路由子网带接收站的子网,有效的方法IP组播源计算机在网络上发送数据的单一副本,当数据到达中间路由器时,就把数据分发到一个或更多的其他路由器,以便接收计算机都可在它们不同的子网里最终接收到数据,生成树的应用IP组播,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,路由子网带接收站的子网,为了让数据尽可能快地到达接收计算机,在数据穿过网络的通路里不应当存在环路以组播源、路由器和包含接收计算机的子网作为顶点,以边表示计算机和/或路由器之间的连接,构造IP网络的生成树,生成树的应用IP组播,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,路由子网带接收站的子网,思路:首先按照深度优先搜索获得简单图的一个根树,根树对应的无向图即简单图的生成树DFS:任选图中一个顶点作为根,通过相继添加边来形成从这个顶点开始的通路,其中每条新边都与通路上的最后一个顶点以及还不在通路上的一个顶点关联。尽可能地添加边到这条通路,如该通路经了所有顶点,即为生成树,否则退到该通路的倒数第二个顶点,若有可能,则形成从这个顶点上开始的经过还没有访问过的顶点的通路。若不行,则后退到通路的另外一个顶点,再试;直到经过了所有顶点,生成树的建立方法深度优先搜索depth-firstsearch,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,生成树的建立方法深度优先搜索depth-firstsearch,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,例2用深度优先搜索找出下图的生成树,生成树的建立方法深度优先搜索depth-firstsearch,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,O(e)或O(n2),思路:首先按照宽度优先搜索获得简单图的一个根树,根树对应的无向图即简单图的生成树BFS:任选图中一个顶点作为根,然后添加与这个顶点关联的所有边,添加的顶点成为生成树在1层的顶点(任意排序)按顺序访问1层上的每个顶点:只要不产生回路,就将与这个顶点相关联的每条边添加到树,产生2层的顶点遵循相同的过程,直到已经添加了所有顶点因为BFS的结果无回路,且是包含所有顶点的连通图,故是图的生成树,生成树的建立方法宽度优先搜索breadth-firstsearch,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,例3用宽度优先搜索找出下图的生成树,生成树的建立方法宽度优先搜索breadth-firstsearch,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,O(e)或O(n2),生成树的建立方法宽度优先搜索breadth-firstsearch,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,问题:一个公司建立一个通信网络来连接它的五个计算机中心,可以租用电话线连接这些中心的任何一对,应当建立哪些连接,以便保证任两个计算机中心都有通路,且网络成本最小?,首先要尽可能少的边,只要保证任两个顶点连通,其次边上的权值之和尽可能的小(最小),顶点:计算机中心边:可能租用的电话线边上的权:月租费,求图的生成树,求最小生成树,定义最小生成树:设连通加权图G=(V,E,W),T=(V,E)是G的生成树,称w(T)=为T的权,使权w(T)达到最小值的G的生成树称的G的最小生成树。,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,定义2最小生成树:连通加权图里的最小生成树是具有最小可能的边的权之和的生成树。,最小生成树的求解算法普林算法和克鲁斯卡尔算法都是基于贪心思想:添加还没使用的、具有规定性质的、权最小的边进行,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,普林算法Primsalgorithm:首先选择带最小权的边,把它放进生成树里相继地向树里添加与已在树里的顶点关联的、并且不与已在树里的边形成简单回路的权最小的边当已经添加了n-1条边时就停止。,procedurePrim(G:带n个顶点的连通无向图)T:=权最小的边fori:=1ton-2begine:=与T里顶点关联、且若添加到T里则不形成简单回路的权最小的边T:=添加e之后的TendT是G的最小生成树,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,例4用普林算法求下图的最小生成树,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,例5用普林算法求下图的最小生成树,7.4生成树和最小生成树SpanningTreesandminimumSpanningTrees,克鲁斯卡尔算法Kruskalsalgorithm:添加图中权最小的一条边到生成树相继添加不与已经选择的边形成简单回路的权最小的边在已经挑选了n-1条边之后停止,procedureKruska
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业设计色彩课件
- 年度岗位安全培训计划课件
- 年度安全检查培训计划表课件
- 年度安全培训总结报道课件
- 2024年湖南能源集团招聘考试真题
- 威尼斯的小艇教学课件
- 威亚安全生产培训记录课件
- Florbetaben-生命科学试剂-MCE
- FAPI-P8PN-生命科学试剂-MCE
- exo-α-Arabinofuranosidase-Caldicellulosiruptor-saccharolyticus-生命科学试剂-MCE
- 药房管理规章制度目录
- 中职第1课 社会主义在中国的确立和探索试题
- 2025年辽宁省交投集团招聘笔试参考题库含答案解析
- 2024年版高尔夫球场场地租赁及会员服务协议3篇
- 香港 信托合同范本
- 少先队活动课《民族团结一家亲-同心共筑中国梦》课件
- 阀门培训课件
- 《焦化机械设备维护检修标准》
- DB11∕T 899-2019 盆栽蝴蝶兰栽培技术规程
- ISO27001信息安全管理体系培训资料
- 2024年上半年全国燃气事故分析报告
评论
0/150
提交评论