图论——树.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
图论——树

2.3 求生成树的方法 广度优先搜索 深度优先搜索 2.4 最小生成树 定义2.5 设T是无向连通带权图G=V,E,W的一棵生成树, T的各边权之和称为T的权,记作W(T)。 G的所有生成树中权最小的生成树称为G的最小生成树。 求最小生成树的算法(避圈法(Kruskal)) (1)设n阶无向连通带权图G=V,E,W有m条边。不妨设G中没有环(否则,可以将所有的环先删去),将m条边按权从小到大排序:e1,e2,…,em。 (2)取e1在T中。 (3)依次检查e2,…,em ,若ej(j≥2)与已在T中的边不构成回路,取ej也在T中,否则弃去ej。 (4)算法停止时得到的T为G的最小生成树为止。 破圈法 任取一个圈, 将圈中边长最大的去掉, 在剩下的图中再找圈, 再破。。。直到不存在圈。 “生长法“ 设S记录子树 初始化, S包含取定的任意一个点 从S到V-S中的边中选取权最小的一条边另外一个顶点加入到S中 直到所有的点都被包含在S中 例2.3 例2.3 求下图所示两个图中的最小生成树。 W(T1)=6 W(T2)=12 例题 例如 求所示图的一棵最小生成树。 解答 最小生成树 W(T)=38 小节结束 2.6 根树及其应用 设D是有向图,若D的基图是无向树,则称D为有向树。 在所有的有向树中,根树最重要,所以我们只讨论根树。 二叉树的应用 根树的定义 定义2.6 T是n(n≥2)阶有向树, (1) T为根树— T中有一个顶点入度为0,其余顶点的入度均为1 (2) 树根——入度为0的顶点 (3) 树叶——入度为1,出度为0的顶点 (4) 内点——入度为1,出度不为0的顶点 (5) 分支点——树根与内点的总称 (6) 顶点v的层数——从树根到v的通路长度 (7) 树高——T中层数最大顶点的层数 (8) 根树——平凡树 根树的画法 树根放上方,省去所有有向边上的箭头。 树叶——8片 内点—— 6个 分支点—— 7个 高度—— 5 家族树 常将根树看成家族树,家族中成员之间的关系如下定义。 定义2.7 设T为一棵非平凡的根树, ?vi、vj∈V(T),若vi可达vj,则称vi为vj的祖先,vj为vi的后代。 若vi邻接到vj(即vi,vj∈E(T)),则称vi为vj的父亲,而vj为vi的儿子。 若vj、vk的父亲相同,则称vj与vk是兄弟。 定义2.8 设v为根树T中任意一顶点,称v及其后代的导出子图为以v为根的根子树。 根树的分类 (1)设T为根树,若将T中层数相同的顶点都标定次序, 则称T为有序树。 (2)分类:根据根树T中每个分支点儿子数以及是否有序 r叉树——每个分支点至多有r个儿子 r叉有序树——r叉树是有序的 r叉正则树——每个分支点恰有r个儿子 r叉正则有序树——r叉正则树是有序的 r叉完全正则树——树叶层数均为树高的r叉正则树 r叉完全正则有序树——r叉完全正则树是有序的 最优二叉树 定义2.9 设2叉树T有t片树叶v1, v2, …, vt,权分别为w1, w2, …, wt,称 为T的权,其中l(vi)是vi的层数,在所有有t片树叶、带权w1, w2, …, wt的2叉树中,权最小的2叉树称为最优2叉树。 举例 下图所示的三棵2叉树T1,T2,T3都是带权为2、2、3、3、5的2叉树。 W(T1)=2×2+2×2+3×3+5×3+3×2=38 W(T2)=3×4+5×4+3×3+2×2+2×1=47 W(T3)=3×3+3×3+5×2+2×2+2×2=36 定理2.5 设T是Huffman树, w1≤w2 ≤ … ≤ wt V1,v2,..vt为叶,(1)若vi,vj为兄弟,则li=lj. (2)设T+是带权w1+w2, w3, …, wt Huffman树, 将w1+w2 相应的叶子生出两个新叶分别带权w1,w2 则得到带权w1,w2, w3, …, wt Huffman树 求最优树的算法(Huffman算法) 给定实数w1, w2, …, wt,且w1≤w2 ≤ … ≤ wt。 ①连接权为w1, w2的两片树叶,得一个分支点,其权为w1+w2。 ② 在w1+w2, w3, …, wt中选出两个最小的权,连接它们对应的顶点(不一定是树叶),得新分支点及所带的权。 ③ 重复② ,直到形成t?1个分支点、t片树叶为止。 算法举例 例如:求带权为1、1、2、3、4、5的最优树。 解答 W(T)=38 * * * 无向树有许多性质,这些性质中有些既是树的必要条件又是充分条件,因而都可以看作树的等价定义。 * 无向树有许多性质,这些性质中有些既是树的必要条件又是充分条件,因而都可以看作树的等价定义。 * 公式由于假设有x片度

文档评论(0)

ranfand + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档