离散数学第10章树解析.ppt

  1. 1、本文档共53页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 例10.2.7 用Prim算法求图中赋权图的最小生成树。 5 f 10 2 d b c e 7 g 6 4 5 8 2 a 7 g e 2 f 5 b 4 2 c a d 5 解 n = 7,按算法要执行n-1 = 6次, w(T) = 25。 由Prim算法可以看出,每一步得到的图一定是树,故不需要验证是否有回路,因此它的计算工作量较Kruskal算法要小。 * 10.2.4 无向树的难点 树是不含回路的连通图。注意把握树的性质,特别是树中叶结点的数目及边数与结点数的关系:m = n-1; 生成树是无向连通图是树的生成子图。注意把握所有连通图都有生成树,知道生成树的树枝与弦及其数目,会使用避圈法、破圈法和广度优先搜索算法求生成树; 最小生成树是赋权连通图的权值之和最小的生成树。会使用Kruskal算法和Prim算法求最小生成树。 * 10.2.5 无向树的应用 例10.2.8 假设有5个信息 中心A、B、C、D、E,它们之间 的距离(以百公里为单位)如图所 示。要交换数据,我们可以在任 意两个信息中心之间通过光纤连接,但是费用的限 制要求铺设尽可能少的光纤线路。重要的是每个信 息中心能和其它中心通信,但并不需要在任意两个 中心之间都铺设线路,可以通过其它中心转发。 A B C D E 3 5 4 7 9 6 2 8 7 9 A B C D E 3 4 6 2 分析 这实际上就是求赋权连通图的最小生成树问题,可用Prim算法或Kruskal算法求解。 解 求得图的最小生成树如图所示,w(T) = 15百公里。即按图的图铺设,使得铺设的线路最短。 * 10.3 根树 10.3.1 根树的定义与分类 定义10.3.1 一个有向图,若略去所有有向边的方向所得到的无向图是一棵树,则这个有向图称为有向树(Directed Tree)。 * 例10.3.1 判断下图中的图哪些是树?为什么? (a) (c) (e) (d) (b) * 定义10.3.2 一棵非平凡的有向树,如果恰有一个结点的入度为0,其余所有结点的入度均为1,则称之为根树(Root Tree)或外向树(Outward Tree)。入度为0的结点称为根(Root);出度为0的结点称为叶(Leaf);入度为1,出度大于0的结点称为内点(Interior Point);又将内点和根统称为分支点(Branch Point)。在根树中,从根到任一结点v的通路长度,称为该结点的层数(Layer Number);称层数相同的结点在同一层上;所有结点的层数中最大的称为根树的高(Height)。 * 例10.3.2 判断下图所示的图是否是根树?若是根树,给出其根、叶和内点,计算所有结点所在的层数和高。 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 解 是一棵根树,其中v1为根,v5,v6,v8,v9,v10,v12,v13为叶,v2,v3,v4,v7,v11为内点。 v1处在第零层,层数为0;v2,v3,v4同处在第一层,层数为1;v5,v6,v7,v8,v9同处在第二层,层数为2;v10,v11,v12同处在第三层,层数为3;v13处在第四层,层数为4;这棵树的高为4。 倒置法 * 家族关系 定义10.3.3 在根树中,若从结点vi到vj可达,则称vi是vj的祖先(Ancestor),vj是vi的后代(Descendant);又若vi, vj是根树中的有向边,则称vi是vj的父亲(Father),vj是vi的儿子(Son);如果两个结点是同一个结点的儿子,则称这两个结点是兄弟(Brother)。 定义10.3.4 如果在根树中规定了每一层上结点的次序,这样的根树称为有序树(Ordered Tree)。 一般地,在有序树中同一层中结点的次序为从左至右。有时也可以用边的次序来代替结点的次序。 * 定义10.3.5(J0430) 在根树T中, 若每个分支点至多有k个儿子,则称T为k元树(k-ary Tree); 若每个分支点都恰有k个儿子,则称T为k元完全树(k-ary Complete Tree); 若k元树T是有序的,则称T为k元有序树(k-ary Ordered Tree); 若k元完全树T是有序的,则称T为k元有序完全树(k-ary Ordered Complete Tree)。 * 子树 在根树T中,任一结点v及其所有后代导出的子图T’称为T的以v为根的子树(Subtree)。 当然,T’也可以有自己的子树。 二元有序树的每个结点v至多有两个儿子,分别称为v的左儿子(

您可能关注的文档

文档评论(0)

335415 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档