《离散数学》 第十六章 树 第一节 无向树及其性质> <16-1 树【定义1 】 无回路的连通无向图称为 无向树 ,简称 树。常用。常用T 表示树。平凡图称为 平凡树。无向树中度数为。无向树中度数为1 的结点(悬挂顶点)称为 树叶,度数大于,度数大于1 的结点称为 分枝点 或 内部结点。若无向图。若无向图G 无回路且至少有两个连通分支,则称G 为 森林 。显然: 森林的每一个连通的分支都是一棵树。 《离散数学》 第十六章 树 第一节 无向树及其性质> <显然有:(a) 、(b) 、(c) 都是树,(d)是森林。其中是森林。其中(c) 是平凡图,我们称之为 平凡树 ,它的结点度数为0。而在任何非平凡树中,都无度数为。而在任何非平凡树中,都无度数为0 的结点。 《离散数学》 第十六章 树 第一节 无向树及其性质> <定理1 : 树的六个等价定义:1. 无回路的连通图;2. 无回路且 m=n-1 的图;(m 是边数,n 是结点数)3. 连通且 m=n-1 的图;4. 无回路,但增加任一新边得到且仅得到一个回路;5. 连通但删去任一边,图便不连通。(n>=2)6. 每一对顶点间有唯一的一条通路。(n>=2) 《离散数学》 第十六章 树 第一节 无向树及其性质> <证明:证明思路(1)1=>2 (2)2=>3(3)3=>4 (4)4=>5 (5)5=>6(6)6=>1 《离散数学》 第十六章 树 第一节 无向树及其性质> <(1) 1=>2即 无回路的连通无向图 => 无回路且m=n-1证明:对顶点数作归纳证明。1) n=1 时,m=0, , ∴m=n-1 成立2) 设n=k命题成立,当命题成立,当n=k+1时,因树连通而无回路,所以至少有一个度数为时,因树连通而无回路,所以至少有一个度数为1 的顶点v (否则有欧拉子图),在T 中删去v,及其关联边,得,及其关联边,得k 个顶点的树T`, 由归纳假设,它有k-1 条边。∴ 原图T 边数为k-1+1, 顶点数为k+1∴m=n-1 成立。∴ 树是无回路且m=n-1 的图。 《离散数学》 第十六章 树 第一节 无向树及其性质> <(2) 2=>3即 无回路且m=n-1 的图 => 连通且m=n-1 的图证明:(反证法)设证明:(反证法)设T 不连通,有k 个连通分图T 1 ,T 2 ,...T k (k≥2),顶点数及边数分别为,顶点数及边数分别为 n 1 ,n 2 ,...n k ; m 1 ,m 2 ,...m k 。因每个连通分图是无回路连通图,故符合树的定义,所以。因每个连通分图是无回路连通图,故符合树的定义,所以m i =n i -1 成立∴ ∴ m=n-k k>1 ,这与m=n-1 前提矛盾∴ ∴ T 连通且具有m=n-1 的图 《离散数学》 第十六章 树 第一节 无向树及其性质> <(3) 3=>4即 连通且m=n-1 的图T=>无回路,但增加任一新边,得到且仅得到一个回路无回路,但增加任一新边,得到且仅得到一个回路证明:(a) T路 无回路 ( 归纳法)1) 因T 连通,并且m=n-1 ,故当n=1 时,m=n-1=0 ,无回路.2) 设顶点数为n-1时无回路。当顶点数为时无回路。当顶点数为n 时,m=n-1 。故至少有一个顶点v ,使deg(v)=1( 否则m≥n) ,删去v 及其关联边得图T’。则由归纳假设得。则由归纳假设得T’ 无回路,再加回结点v 及关联边得图T ,则T 也无回路。 《离散数学》 第十六章 树 第一节 无向树及其性质> <(b) T 增加任一新边,得到且仅得到一个回路在连通图T 中,任意取两点v i ,v j ,因为,因为T 连通,所以v i ,v j 存在一条路,若增加新边存在一条路,若增加新边(v i ,v j ) ,则得一回路,且该回路是唯一的。( 否则,删去新边,路中必有回路。) 《离散数学》 第十六章 树 第一节 无向树及其性质> <(4) 4=>5即 无回路,但增加任一新边,得到且仅得到一个回路=>连通,但删去任一边,图便不连通。(n≥2)证明:若图不连通,则存在若图不连通,则存在v i ,v j ,使v i ,v j 之间没有路,增加边之间没有路,增加边<v i ,v j > 不产生回路,与前提矛盾,故图是连通的。因T 无回路,故删去任一边,图便不连通。 《离散数学》 第十六章 树 第一节 无向树及其性质> <(5) 5=>6即 连通,但删去任一边,图便不连通(n≥2)=>每一对顶点间有唯一的一条通路。每一对顶点间有唯一的一条通路。证明: 因图连通,故任二顶点间有一条通路;若二顶点间的路不唯一,则若二顶点间的路不唯一,则T中有回路,删去回路上任一条边,图仍连通,与假设矛盾,所以,每一对顶点间必有唯一的一条通路。中有回路,删去回路上任一条边,图仍连通,与假设矛盾,所以,每一对顶点间必有唯一的一条通路。 《离散数学》 第十六章 树 第一节 无向树及其性质> <(6) 6=>1即 每一对顶点间有唯一的一条通路=> 无回路的连通无向图。证明:因每一对顶点有唯一的一条通路,故图是连通的,因每一对顶点有唯一的一条通路,故图是连通的,若图有回路,则任二顶点有两条不同通路,与题设矛盾。若图有回路,则任二顶点有两条不同通路,与题设矛盾。 《离散数学》 第十六章 树 第一节 无向树及其性质> <定理2 : 任意非平凡的树T =(n, m)中,至少有两片树叶。证明:若中,至少有两片树叶。证明:若T中只有一片树叶,则中只有一片树叶,则 Σ Σdeg(v i )≥2(n-1)+1=2n-1若T 中没有树叶,则Σ Σdeg(v i )≥2n均与Σ Σd(v i )=2m=2(n-1)矛盾 ■例:画出矛盾 ■例:画出5阶所有非同构的无向树。特点:阶所有非同构的无向树。特点: 边数为n-1=4 所有顶点的度数和为8无向树的最小度大于0 ,最大度小于5。至少有两个顶点的度数为。至少有两个顶点的度数为1 。 《离散数学》 第十六章 树 第一节 无向树及其性质> <n个顶点的树的非同构树数目n 1 2 3 4 5 6 7 8t n 1 1 1 2 3 6 11 23n 9 10 11 12 13 14 15 16t n 47 106 235 551 1301 3159 7741 19320n 20 23 26t n 823065 14828074 279793450 《离散数学》 第十六章 树 第一节 无向树及其性质> <作业:P319: 3, 6 《离散数学》 第十六章 树 第一节 生成树> <16-2 生成树【定义1 】 若无向图G 的生成子图T 是树,称T 为G 的 生成树;生成树;生成树T 中的边称为 树枝,图,图G 的不在生成树T 中的边称为 弦,所有弦的集合导出的子图称为,所有弦的集合导出的子图称为 树T 的余树 。注 : (1) 由定义知,只有连通图才有生成树。(2)连通图的生成树不唯一,至少有一棵,因通过不断地删去图连通图的生成树不唯一,至少有一棵,因通过不断地删去图G 中的回路中的边,总能得到一棵生成树。(3) 设连通图G 有n 个顶点,m 条边,则G 的任一生成树有n-1条边,m-(n-1) 条弦。 《离散数学》 第十六章 树 第一节 生成树> <图(c) 是上图(a)的生成子树;图的生成子树;图(d) 所示的树,则不是图(a)的生成子树;图的生成子树;图(b) 是图(a) 的生成子图但不是生成树; 《离散数学》 第十六章 树 第一节 生成树> <定理3 : 图G中任一条回路和任何一棵生成树的余树至少有一条公共边。证明:若中任一条回路和任何一棵生成树的余树至少有一条公共边。证明:若G中一条回路和一生成树的补无公共边,则表示该回路在该生成树中。这与生成树定义矛盾中一条回路和一生成树的补无公共边,则表示该回路在该生成树中。这与生成树定义矛盾.定理4 : 设T 为无向连通图G 中一棵生成树,e 为T的任意一条弦,则的任意一条弦,则T∪ ∪e 是G中只含一条弦其余边均为树枝的圈,而且不同的弦对应的圈也不同。中只含一条弦其余边均为树枝的圈,而且不同的弦对应的圈也不同。定理5 : 设T 是连通图G 的一棵生成树,e 为T 的树枝,则G中存在只含树枝e,其余边都是弦的割集,且不同的树枝对应的割集也不同。,其余边都是弦的割集,且不同的树枝对应的割集也不同。 《离散数学》 第十六章 树 第一节 生成树> <【定义2 】 设T 是n 阶m 条边的无向连通图G 的一棵生成树, 设e’ 1 , e’ 2 , …, e’ m-n+1 为T的弦,设的弦,设Cr 为T 添加弦e’ r 产生的G 中只含弦e’ r ,其余边均为树枝的圈,称,其余边均为树枝的圈,称Cr 为G 的对应T 的弦e’ r 的 基本回路或基本圈 ,r=1,…,m-n+1.并称{C 1 ,C 2 ,… ,C m-n+1 } 为G 对应T 的 基本回路系统 ,称m-n+1为G 的 圈秩 ,记作ξ ξ(G). 《离散数学》 第十六章 树 第一节 生成树> <【定义3 】 设T 是n 阶m 条边的无向连通图G的一棵生成树,设的一棵生成树,设e 1 , e 2 , …, e n-1 为T的树枝,设的树枝,设S i 为G 中只含树枝e’ i 的割集,则称S i 为G 的对应生成树T由树枝由树枝e’ i 生成的 基本割集 ,r=1,…,n-1.并称{S 1 ,S 2 ,… ,S n-1 } 为G 对应T 的 基本割集系统 ,称n-1 为G的 割集秩 ,记作η η(G). 《离散数学》 第十六章 树 第一节 生成树> <生成树求法 破圈法:每次去掉回路中的一条边,其去掉的边的总数为每次去掉回路中的一条边,其去掉的边的总数为m -(n -1) ; 《离散数学》 第十六章 树 第一节 生成树> < 避圈法: 每次选取G中的一条边,该边不能与已经选取的边构成回路,此时,选取的边的总数为中的一条边,该边不能与已经选取的边构成回路,此时,选取的边的总数为(n -1) 。 《离散数学》 第十六章 树 第一节 生成树> <例: 某地要建6个工厂,拟修筑道路连接这个工厂,拟修筑道路连接这6处。经过勘测其道路可依如右图的无向边铺设。为使这处。经过勘测其道路可依如右图的无向边铺设。为使这6处都有道路相通,问至少要铺设几条路?怎样铺设?解:此问题即为找上图的生成子树问题。由图可知:处都有道路相通,问至少要铺设几条路?怎样铺设?解:此问题即为找上图的生成子树问题。由图可知:n =6,则,则n-1 =5 ,所以至少要铺设5条路才行。可按下图所示的线路铺设。条路才行。可按下图所示的线路铺设。 《离散数学》 第十六章 树 第一节 生成树> <最小生成树定义3 : 设G =<V, E>是一个连通的无向有权图,其中每一边的权是一个连通的无向有权图,其中每一边的权W(i, j)是非负实数。树是非负实数。树T 是G 的一棵生成子树,树T的每个树枝所赋权值之和称为的每个树枝所赋权值之和称为 树T 的权 ,记为w(T) 。G 中具有最小树权的生成子树称为G 的最小生成树 。 《离散数学》 第十六章 树 第一节 生成树> <五、最小生成树的求法该算法是克鲁斯克尔(Kruskal) 于1956年将构造生成树的避圈法推广到求最小生成树的结果,其年将构造生成树的避圈法推广到求最小生成树的结果,其要点是,在与已选取的边不构成回路的边中选取最小者要点是,在与已选取的边不构成回路的边中选取最小者 。具体步骤如下:1. 在G 中选取最小权边e i ,置i =1 ;2. 当i =n -1 时,结束,否则转3 ;3. 设已选取的边为e 1 ,e 2 ,…,e i ,在G 中选不同于e 1 ,e 2 ,…,e i 的边e i+1 ,使{e 1 ,e 2 ,…,e i ,e i+1 }中无回路且e i+1 是满足此条件的最小权边;是满足此条件的最小权边;4. 置i =i +1 ,转2 。 《离散数学》 第十六章 树 第一节 生成树> <求如下图(a)中的最小生成子树。 《离散数学》 第十六章 树 第一节 生成树> <算法的正确性证明:①. 证明边集最后所得子图T’ 是G的生成树。证:因的生成树。证:因T’ 是有n-1条边,且无回路的图。由树的等价定义可知,它是树条边,且无回路的图。由树的等价定义可知,它是树.又 ∵T’ 包含了n 个顶点,故包含了G 的全部顶点.∴T’ 是G的生成树。②、证明的生成树。②、证明T’ 是最小生成树 《离散数学》 第十六章 树 第一节 生成树> <②、证明T’ 是最小生成树证明: 设T 是最小生成树,T’ 是由krusal 算法生成的树.若T 与T’ 不同,但有公共边e 1 ...e i (i>=0),则,则∃ ∃e i+1 ∈ ∈T’∧ ∧ e i+1 ∉ ∉T ,则在T∪ ∪{e i+1 } 中有一回路c,而,而T’是树,因任一回路与生成树的补必有一公共边,所以在是树,因任一回路与生成树的补必有一公共边,所以在c 中必存在一条边f∉ ∉T’。对于树。对于树T( 边集至少为e 1 ...e i ,f),若用,若用e i+1 代换f ,得一棵新树T 1 ( 边集至少为e 1 ...e i e i+1 ) 《离散数学》 第十六章 树 第一节 生成树> <则T 1 的权W(T 1 )=W(T)+W(e i+1 )-W(f) 因为T 为最小生成树,∴W(T)≤W(T 1 ) ∴W(e i+1 )≥W(f)又根据T’ 生成法, 自e 1 ...e i 之后将取f 而不是e i+1而现在T’ 取e i+1 ,∴W(e i+1 )≤W(f) ∴W(e i+1 )=W(f)∴T 1 也是G的最小生成树。而的最小生成树。而T 1 与T’ 的公共边 比 比 T 与T’ 的公共边多1,用,用T 1 置换T ,重复上面论证直至T 与T’ 有n-1条公共边,从而证得条公共边,从而证得T’ 也是G 的最小生成树。 《离散数学》 第十六章 树 第一节 生成树> <作业:P320: 20, 24, 25 《离散数学》 第十六章 树 第三节 根树及其应用> <16-3 根树及其应用【定义1 】 设G =<V, E> 是一个简单有向图,若略去图G中所有有向边的方向以后,所得到的一个无向图是一棵树,则称这个有向图是一棵中所有有向边的方向以后,所得到的一个无向图是一棵树,则称这个有向图是一棵 有向树 。其中图(b) 、(c) 又是一类特殊的树,称此树为 根树 。 《离散数学》 第十六章 树 第三节 根树及其应用> <二、根树:定义2 : 一棵非平凡的有向树,若恰好有一个结点的入度为0,其余所有结点的入度均为,其余所有结点的入度均为1 ,则称此有向树为 根树 或 外向树。入度为。入度为0 的结点称为 树根;入度为;入度为1 出度为0 的结点称为 树叶;入度为;入度为1 出度大于0 的结点称为 内点;内点和树根统称为;内点和树根统称为 分枝点 。注意: 根树通常采用根在顶点上,所有边方向向下的图表示根树通常采用根在顶点上,所有边方向向下的图表示.( 箭头可省略) 《离散数学》 第十六章 树 第三节 根树及其应用> <在根树中,任意一个结点的 层次 或 级数即是从根到该结点的单向通路的长度,同级的结点具有相同的通路长度。层次最大的顶点的层数称为即是从根到该结点的单向通路的长度,同级的结点具有相同的通路长度。层次最大的顶点的层...