九二分图平面图和树王元元.pptVIP

  • 0
  • 0
  • 约1.18万字
  • 约 96页
  • 2018-06-03 发布于上海
  • 举报
九二分图平面图和树王元元

* 第95页/共96页 * 第96页/共96页 * 例9-4 第63页/共96页 * 设G = V,E,W为连通的边赋权图,W为E到非负实数集的函数。 设T为G的生成树,那么T中各边权之和 W(T)= 称为生成树T的权,权最 小的生成树称为最小生成树 。 最小生成树 第64页/共96页 * 例 它们的权W(T1)=24,W(T2)=30。 3 2 8 4 7 3 7 8 1 11 T1 T2 第65页/共96页 * 克鲁斯克尔(Kruskal)算法 设连通边赋权图G有n个顶点m条边,并设 W(e1)W(e2)W(e3)…W(em) (1)设置变量k,A。置k为1,置A为?。 (2)若G的子图V,A∪{ek}不包含回路,那么置A为A∪{ek}。 (3)当 ?A? = n-1时算法终止,否则置k为k+1,回到步骤(2)。 第66页/共96页 * 克鲁斯克尔(Kruskal)算法 算法的基本思想: 依边权从小到大的次序,逐边将它们放回到所关联的顶点上,但删去会生成回路的边,直至产生一个n – 1 条边的无回路的子图。 此法常形象称为避圈法。 第67页/共96页 * 指出两点 (1)对于有边权相同的赋权图,克鲁斯克尔算法依然成立。若两个边权相同,哪一条都可以。 (2)利用求生成树的破圈法也可求最小生成树,但其算法与避圈法相反。即依次从图的回路中删去边权最大的边,直至没有回路结束。若在某一回路中,两个边权相同且最大,这时可删去其中的任意一条。 第68页/共96页 * T G 1 11 3 8 3 4 9 10 6 7 2 1 2 3 例 避圈法 4 7 第69页/共96页 * G 1 3 8 3 4 9 10 6 7 2 例 破圈法 11 第70页/共96页 * 克鲁斯克尔(Kruskal)算法正确性 (1)算法产生的图无回路,且边数m = n – 1 ,据定理9-16,此图为树。由于它含有G的所有n个顶点,因而是G的生成树。 第71页/共96页 * 克鲁斯克尔(Kruskal)算法正确性 (2)设算法生成的树T不是最小生成树,另有最小生成树T′,那么至少有一边e在T′中而它不在T中。考虑关于生成树T的弦e-回路,据算法实施过程知,e是该回路中权最大的边。于是由定理9-23,e不会在G的最小生成树T′中,矛盾。因此,算法生成的树是最小生成树。 第72页/共96页 * 9.3.3 根树 定义9-12 树T称为根树(rooted tree),如果 (1)T为一孤立结点v0 。v0又被称为T的树根。 (2)T1,T2,…,Tk为以v1,v2,…,vk为树根的根树,T由T1,T2,…,Tk及与v1,v2,…,vk相邻的结点v0所组成。v0称为T的树根。 第73页/共96页 * 9.3.3 根树 定义9-13 在定义9-12中, (1)v1,v2,…,vk称为v0的儿子,v0称为它们的父亲。vi,vj同为一顶点v的儿子时,称它们为兄弟。 (2)顶点间的父子关系的合成称为顶点间的祖孙关系。即当vi为vi+1 (i = 1, 2,…, l-1)的父亲时,v1是vl的祖先,vl为v1的子孙。 第74页/共96页 * 9.3.3 根树 定义9-13 在定义9.12中, (3)根树T自身及以它的树根的子孙为根的根树(T的子图),均称为T的子树(subtree),后者又称为T的真子树。 第75页/共96页 * 根树性质 根树的每个结点都是一棵子树的树根。 除了树根,根树中每结点均为某一结点的儿子;除了树叶,根树中每一结点均为某些结点的父亲。 树根到叶有唯一的通路,这样的通路中最长一条的长度称为树高。 第76页/共96页 * 例9-16 v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 第77页/共96页 * 例9-18 甲乙两人进行乒乓球赛,规定一方连胜两局或胜局首先达到3局者为胜方。问甲乙至少、至多要进行多少局比赛。 如果用分支结点表示一局比赛, 用关联的

文档评论(0)

1亿VIP精品文档

相关文档