离散数学第九章树
离散数学中的图的树与生成树的计数

在离散数学中,图是一个由点和边组成的抽象数学模型。
其中,树是一种特殊的图,它是一个无环连通图。
在图论中,树扮演了重要的角色,它具有许多有趣的性质和应用。
而生成树则是树的一个特殊子集,它由给定图中的所有顶点和部分边构成。
本文将介绍图的树的基本概念,并探讨生成树的计数方法。
首先,让我们来看看图的树。
树是一种无环连通图,其中任意两个顶点之间存在唯一一条路径。
它具有以下性质:1.n个顶点的树有n-1条边。
这可以通过归纳法证明:当n=1时,结论成立;假设n=k时成立,那么n=k+1时,只需要添加一个顶点和一条边,即可构成n=k+1个顶点的树。
因此,结论成立。
2.连接树上任意两个顶点的边都是桥。
即如果一条边被删除,那么树就会变成两个或更多个不相连的子树。
3.树是一个高度平衡的结构。
对于一个n个顶点的树,任意两个叶子结点之间的路径长度至多相差1。
4.树的任意两个顶点之间有唯一一条路径,路径长度为顶点之间的边数。
接下来,让我们来讨论生成树的计数方法。
生成树是树的一个特殊子集,它是由给定图中的所有顶点和部分边构成。
生成树的计数在图论中具有重要的意义和应用。
对于一个具有n个顶点的连通图来说,其生成树的个数可以通过Cayley公式计算得到。
Cayley公式是由亚瑟·凯利于1889年提出的,它给出了完全图的生成树数目。
据此,我们可以得到生成树的计数公式为:T = n^(n-2),其中T表示生成树的个数。
此外,还有一种常见的计数方法是基于度数矩阵和邻接矩阵的矩阵树定理。
矩阵树定理由高斯于1847年提出,它提供了一种计算图的生成树个数的方法。
根据矩阵树定理,一个无向图G的生成树数目等于该图度数矩阵的任意一个(n-1)阶主子式的行列式的值。
其中,度数矩阵是一个对角矩阵,它的对角线上的元素为各个顶点的度数。
邻接矩阵则是一个关于顶点间连接关系的矩阵,其中1表示相邻顶点之间存在边,0表示不存在边。
除了数学方法,还存在一种基于图的遍历的计数方法,称为Kirchhoff矩阵树定理。
离散数学第四版课后答案(第9章).docx

第9章习题解答9. 1有5片树叶.分析设T有x个1度顶点(即树叶)•则T的顶点数n = 3 + 2 + x = 5 + x,T的边数m = n- \ =4 + x.由握手定理得方程.2m = 2(4 + x) = y^J(v f) = 3x3 + 2x2 + l- x = 13 + x./=1由方程解出*5.所求无向树T的度数列为1, 1, 1, 1, 1, 2, 2, 3, 3, 3.由这个度数列可以画多棵非同构的无向树,图9. 6给出的4棵都具有上述度数列,且它们是非同构的.9.2 T中有5个3度顶点.分析设T中有x个3度顶点,则T中的顶点数n = l + x,边数加= "-l = 6 + x,由握手定理得力程.2m = 12 + 2x =》d(片)=3x + 7/=!rtl方程解出x=5.所求无向树T的度数列为1, 1, 1, 1, 1, 2, 2, 3, 3, 3.由这个度数列可以画多棵非同构的无向树,图9.6给出的4棵都具有上述度数列,且它们是非同构的.9.2 T中有5个3度顶点.要析设T中有x个3度顶点,则T中的顶点数"7 +小边数加1=6 + .由握手定理得方程.由此解出"5,即T中有5个3度顶.T的度数列为1, 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, 3.由于T中只有树叶和3度顶点, 因而3度顶点可依次相邻,见图9. 7所示.还有棵与它非同构的树,请读者自己i田i出.9. 3力肛-1条新边才能使所得图为无向树.分析设具有£个连通分支的森林为G,则G有k个连通分支人込,…八/全为树,心1,2,…&加新边不能在7;内部加,否则必产生回路.因而必须在不同的小树之间加新边.每加一条新边后,所得到的森林就减少一个连通分支.恰好加-1条新边,就使得图连通且无回路,因而是树•在加边过程屮,只需注意,不在同一人连通分支中加边.下面给出一种加边方法,取v,为7;中顶点,加新边(v,,v,+l)z = l,2,---J-l,则所得图为树, 见图9. 8给出的一个特例.图中虚线边为新加的边.9. 4不一定.分析n阶无向树T具有“-I条边,这是无向树T的必要条件,但不是充公条件•例如,阶圈(即“-1个顶点的初级回路) 和一个孤立点组成无向简单图具有”-1条边,但它显然不是树.图9.89. 5非同构的无向树共有2棵,如图9. 9所示.困9.9分析由度数列1, 1, 1, 1,2,2, 4不难看出,唯一的4度顶点必须与2度顶点相邻,它与1个2度顶点相邻,还是与两个2度顶点都相邻,所得树是非同构的,再没有其他情况. 因而是两棵非同构的树. o 、O O9.6有两棵非同构的生I ,——V(1) (2)成树,见图9. 10所示. 图9.10分析图9. 10是5阶图(5个顶点的图),5阶非同构的无向树只有3棵,理由如下.5 阶无向树中,顶点数"=5,边数加=4,各顶点度数Z和为&度数分配方案有3种,分别为①1, 1, 1, 1,4;②1, 1, 1,2,3;③1, 1,2, 2. 2.每种方案只有一棵非同构的树•图9.10所示的5阶图的非同构的生成树的度数列不能超出以上3种,也就是说,它至多有3棵非同构的生成树,但由于图中无4度顶点,所示,不可能有度数列为①的生成树,于是该图最多有两棵非同构的生成树.但在图9. 10中已经找出了两个非同构的生成树, 其中(1)的度数列为③,(2)的度数列为②,因而该图准确地有两棵非同构的牛成树.9. 7 基本回路为:C c = cbad,C e = ead,C g = gfa,C h =hfab.基本回路系统为{C c,C e,C g,C h}.基本回路系统为{S a,S h,S d,S f}.分析1°注意基本回路用边的序列表示,而基本割集用边的集合表示.2°基本回路中,只含一条弦,其余的边全为树枝,其求法是这样的:设弦e = (fj),则%,Vj在生成树T中,且在T中, 之间存在唯一的路径「订与e = (v,,v y)组成的回路为G中对应弦e的基本回路.3°基本割集中,只含一条树枝,其余的边都是弦,其求法是这样的:设树枝e = (i;,Vj),则e为T中桥,于是T-e (将e从T 中支掉),产生两棵小树7;和0,则={e \e在G中且e的两端点分别在7;和3中} S。
离散数学-图论-树

二叉树
• 定义:二元有序树称为二叉树.
– 每个顶点最多有两个子顶点,一般称为左子顶 点和右子顶点. – 类似地,称每个顶点的左子树和右子树. – 每个顶点的出度都是0或2,称为二叉正则树.
二叉树的性质
• 定理:设有二叉树T, (1)第i层最多有2i个顶点; (2)若T高度为h,则T最多有2h11个顶点,最 少有h个顶点; (3)树叶个数出度为2的顶点个数1.
1 2
Huffman树与最优编码
• 若以符号为树叶,符号概率为树叶的权,利 用通过Huffman算法得到的二叉树对符号 编码,则可以保证i pili最小. • 例:对1,1,2,3,5,6,7,8构造Huffman树.
7 3 2 1 1 5 6
8
编码:设 A, B, C, D 的频率(即权值)分别为 17%, 25%, 38%, 20%, 试设计哈夫曼编码(最佳前缀码/最优编码)。
最优编码
• 构成消息的各符号的使用频率是不一样 的,显然常用符号编码短一些,罕用符号编 码长一点,可以使传输的二进制位数最少. • 最优编码问题:给定符号集{a1,a2,...,am}, ai 的出现概率是pi,编码长度为li,要使i pili最 小.
例:如果需传送的电文为 ‘A B A C C D A’,它只用到四种字符, 用两位二进制编码便可分辨。假设 A, B, C, D 的编码分别为 00, 01,10,11,则上述电文便为 ‘00010010101100’(共 14 位), 译码员按两位进行分组译码,便可恢复原来的电文。 数据的最小冗余编码问题 在编码过程通常要考虑两个问题 译码的惟一性问题
5 1 5 6 6
U 1
1 5 6 1 5 5 4 6 5 4 5 5
2
离散数学

(注)以上算法需假定图中每条边的权都不 相同.但事实上对图中有若干条边的权相同的情 形,只要将它们的权作微小的变动,使之各不相同, 即可使用这个算法.
例:见书本图9.4
又有计算最小生成树的实例:
1 11
6
3 2
9
7 8
10
4 5
红绿粉红紫黄
另有“破圈法”:删除边破坏回路,同时保持图的连 通性,直到没有回路为止。 a
注意,具有 n 个结点和恰有 n-1 条边的图未 必是树,但连通或无回路的是。 连通无圈完全刻划了树,这是树的一个特
性;树还有另外一个重要性质是:它以最少的
边使结点连通。
定理9.2 给定树T=<V,E>,若|V|≥2,则T中至 少存在两个悬挂结点(树叶)。
证明: 1)设T=<V,E>是树,|V|=v.因为T是连通图,viT 有deg(vi)≥1且由定理5-1.1有∑deg(vi)=2(|V|-1)=2v-2.
例:下图为根树,右边是左图省掉方向的代替图。
v1
v2 v3 v4 v2
v1
v3 v4
v5
v6
v7
v8 v9
v5
v6
v7
v8 v9
v10 v11 v12
v10
v11 v12
为表示结点间的关系,有时借用家族中的
术语。一棵根树可以看成一棵家族树。令u是有
根树中的分枝结点,若从u到v有一条边或,则 结点v称为结点u的“儿子”,或称u是v的“父 亲”;若从u到w有一条路,称u是w的“祖先”, 或称w是u的“子孙”或“后代”,同一个分枝
第九章 树
9.1 无向树及生成树
9.2 根树及其应用
离散数学 求生成树的个数

在离散数学中,生成树(Spanning Tree)是一个图(Graph)的子图,它包含图中的所有顶点,并且是一个树(Tree)。
生成树的一个重要性质是它不包含任何环(Cycle)。
求一个给定图的生成树个数是一个经典问题,通常使用矩阵树定理(Matrix Tree Theorem)来解决。
矩阵树定理给出了一个图的生成树个数的计算公式,它基于图的拉普拉斯矩阵(Laplacian Matrix)的行列式。
拉普拉斯矩阵是一个方阵,其大小为图的顶点数,矩阵的元素定义如下:•如果i和j是不同的顶点,则矩阵的第i行第j列的元素是顶点i和j之间的边的权重(如果存在边的话),否则是0。
•对于每个顶点i,矩阵的第i行第i列的元素是顶点i的度(即与顶点i相邻的边的数量)的负值。
矩阵树定理指出,图的生成树个数等于其拉普拉斯矩阵的任何一个n-1阶主子式的行列式值的绝对值。
n是图的顶点数,n-1阶主子式意味着去掉矩阵中的一行和一列后得到的矩阵。
下面是一个简单的例子,说明如何使用矩阵树定理计算生成树的个数:假设有一个包含4个顶点的简单图,其边和权重如下:A -- 2 -- B| |1 3 1| |C -- 4 -- D1 -3 1 00 1 -3 40 0 1 -4主子式的行列式值。
去掉第一行和第一列后,我们得到:1 01 -3 40 1 -4x3矩阵的行列式,我们得到:1 * 1) - (0 * 0) = 12 - 1 = 11过程可能涉及复杂的行列式计算,特别是对于大型图来说。
在实际应用中,通常会使用专门的数学软件或库(如Python中的NumPy或SciPy)来进行这些计算。
此外,还有一些算法(如Kruskal算法和Prim算法)可以用来构造生成树,但它们并不直接计算生成树的总数。
这些算法通常用于找到图的一个生成树,而不是计算所有可能的生成树的数量。
离散数学 树

离散数学树
离散数学中的树(Tree)是一种常见的图论结构,它是一种无向、连通且没有简单回路的无向图,或者是一个有向连通图,其中每个节点都只有唯一一个父节点(除了根节点)。
树形结构中的每一个节点都可以视为一个子树的根节点,因为它下面连接了若干个子节点,这样就形成了一棵向下生长的树状结构。
树形结构还有一个重要的特点就是它具有很好的递归性质,因为每个节点下面都可以再建立一棵子树,这样就可以逐层递归地构建出整棵树。
在离散数学中,树被广泛应用于算法设计、数据结构以及对计算机网络和信息系统进行建模等领域。
树的深度和广度优先遍历、树的一些基本性质(如高度、度、叶子节点等)以及树的遍历应用在图的搜索算法、排序、哈夫曼编码、抽象语法树等算法中都有广泛的应用。
离散数学09 图

第九章 图9.1设},,,,{y x w v u V =,画出图),(E V G =,其中:(1))},(),,(),,(),,(),,{(y x y v w v x u v u E =(2))},(),,(),,(),,(),,{(y x y w x w w v v u E =再求各个顶点的度数。
解(1)见图9.1(a )。
其中顶点u 的度数是2,顶点v 的度数是3,顶点x 的度数是2,顶点y 的度数是2,顶点w 的度数是1。
图9.1 习题1图(2)见图9.1(b )。
其中顶点u 的度数是1,顶点v 的度数是2,顶点x 的度数是2,顶点y的度数是2,顶点w 的度数是3。
9.2 设G 是具有4个顶点的完全图。
(1)画出图G 。
(2)画出G 的所有互不同构的生成子图?解(1)如图9.2(1)所示。
图9.2(1) 习题2图(2) 如图9.6(2)所示﹒ ﹒ ﹒ ﹒ ﹒ ﹒图9.2(2) 习题2图9.3 一个无向简单图,如果同构于它的补图,则称这个图为自互补图。
(1)试画出五个顶点的自互补图。
(2)证明一个自互补图一定只有k 4或14+k 个顶点(k 为整数)。
解(1)(a) (b)图9.3 习题3图 (2)因为n 个顶点的无向完全图有)1(21-n n 条边,所以自互补图有)1(41-n n 条边,因此,k n 4=或14+k 。
9.4 画出两个不同构的简单无向图。
每一个图都仅有6个顶点,且每个顶点都均是3度,并指出这两个图为什么不同构。
解图9.4 习题9.4图9.5 证明任意两个同构的无向图,一定有一个同样的顶点度序列。
顶点度序列是一组按大小排列的正整数。
每一个数对应某一个顶点的度数。
证明两个同构的无向图,度数相同的顶点数目一定相同,这样才能够建立起顶点之间的一一对应关系,进而建立起边的对应关系。
所以,任意二个同构的无向图,一定有一个同样的顶点度序列。
9.6图9.6中所给的图(a )与图(b )是否同构?为什么?(a )(b ) 图9.6 习题6图 解左图9.2(a )中次数为4的点,与3个度数为1,一个度数为2的顶点相邻接,右图9.2(b )中度数为4的点,却与3个度数为1,一个度数为3的顶点相邻接。
离散数学课件_9 树与平面图

1.概念:有向树,根树,树叶,内点,分支
点,层数,树高,祖先,后代,父亲,儿子,
兄弟,有序树,m叉树,完全m叉树,根子树,
左子树,右子树,带权二叉树,最优二叉
树,前缀,前缀码,二元前缀码,二叉树遍
历等;
4
返回本章首页
2019/12/4
第三节 有向树与根树(2)
2.定理: 设T是一棵根树,r是T的树根,则 对于T的任一顶点v,存在唯一的有向路 从r到v;
3.算法:最优二叉树的Huffman算法;
4.前缀码问题:前缀码与二叉树的对应关 系;
5.二叉树的遍历:三种遍历方法,即先根遍 历,中根遍历,后根遍历法.
返回本章首页
5 2019/12/4
第四节 平面图
平面图是很多实际问题的模型. 例如在 集成电路的布线设计中就遇到了平面图 的问题.
1.基本概念:平面图,平面嵌入,面,无限 面(外部面),内部面,边界,次数等;
第九章 树与平面图
树是一类结构较为简单的图,是用途极 为广泛的离散数学模型,特别是二叉树, 它在计算机科学中用得最多.因此在学习 时应很好地掌握好诸如树的充要条件、 生成树、最优生成树、根树、树的各种 算法、及二叉树的访问次序等内容.平面 图是实际背景很强的一类图,能用本章 介绍的方法判断一个图是否为平面图.
2.基本非平面图:K3,3与K5; 3.平面图的欧拉公式; 4.平面图的判定:库拉图斯基定理.
返回本章首页
6 2019/12ቤተ መጻሕፍቲ ባይዱ4
本章小结
本章我们介绍树与平面图,但以介绍树 为主.给出树的定义及树的充要条件, 生成树、最优生成树及最优生成树的克 鲁斯卡尔算法,特别是二叉树,我们讨 论 了 二 叉 树 的 Huffman 算 法 、 前 缀 码 、 二叉树的遍历等问题.最后介绍了一类 实际背景很强的一类图——平面图.
离散数学 课件 PPT 精品课程 考研 大学课程 数学一 第九章 树

例 (2)为(1)的一棵生成树T,(3)为T的余树.
(1)
(2)
(3)
余树可能不连通,也可能含回路。
2019/1/30
11
定理9.3 任何连通图G至少存在一棵生成树. 推论1 设n阶无向连通图G有m条边,则 m≥n-1. 推论2 设n阶无向连通图G有m条边,T是G的生 成树,T'是T的余树,则T'中有m-n+1条边.
(1)
(2)
(3)
m=8,n=5
2019/1/30 12
a
d b
f
e
图中, 初级回路aed, bdf,cef.
c
这3个回路中每一 个回路都只含一条 弦,其余的边都是树 枝,这样的回路称为 基本回路.
2019/1/30
13
定义9.3 设T是n阶连通图G=<V,E>的一棵生成 树,G有n条边.设e1,e2· · · ,em-n+1为T的弦,设Cr是T 加弦er产生的G的回路,r=1,2,…m-n+1.称Cr为 对应于弦er的基本回路,称{C1,C2,· · · ,Cm-n+1}为 对应生成树T的基本回路系统.
连通分支数大于等于2,且每个连通分支均
平凡图称为平凡树. 设T=<V,E>为一棵无向树,v∈V,若d(v)=1,
则称v为T的树叶.若d(v)≥2,则称v为T的分 支点.
2019/1/30 3
例
(a)
(b)
(c )
图中(a),(b)为树,而(c)不是树, 但(c)为森林。
2019/1/30 4
T有5个树枝a, b, c, d, e, 因而有5个 基本割集:Sa={a,g,f } ; Sb={b,g,h } ; Sc={c,f,h } ; Sd={d,i,h } ; Se={e,f,i}. 基本割集系统为{Sa,Sb,Sc, Sd,Se}.
代数结构-树

384
(1,2,5,6) (8,3,4,3)
6
7
离散数学 中国地质大学 计算机学院
18
生成树 (Spanning TCaryeleey定) 理:n个顶点的标号完全图Kn有nn-2棵生成树
384 7
(1,2,5,6,3) (8,3,4,3,8)
离散数学 中国地质大学 计算机学院
19
生成树 (Spanning TCaryeleey定) 理:n个顶点的标号完全图Kn有nn-2棵生成树
w(e1)<=w(e1’),从而w(T1)<=w(T*)。 依此进行,可以将ek加入到Tk-1中,将形成环,此环中必然然存在边ek’在T*中而不在T中,于是,删除ek’, 则得到生成树Tk。而显然,两边序列e1e2e3…ek 与 e1e2e3…ek’均不构成环,而按kruskal算法,必然有 w(ek)<=w(ek’), 从而 w(Tk)<= w(Tk-1)<=w(T*) ……, 最后可以将em加入到Tm-1中,得到生成树Tm,且w(Tm)<=…<=w(Tk)<= w(Tk-1)<=… <=w(T1)<=w(T*)。 而此时, T所有边都加入到Tm中,即Tm=T。故w(T)<=w(T*) 因此,T为最小生成树。
(3,2,2,3,4,1)
S:(5,6,7,2,3,4)
5
1
32 6
4
8
7
因此,序列集合{t1,t2,…,tn}与Kn的生成树集合存在双射关系。
离散数学 中国地质大学 计算机学院
29
2 生成树(Spanning Tree) 最小生成树(minimum spanning tree)
算法? Kruskal算法
离散数学-树

离散数学导论
. 树
1.2 生成树
➢定义9.10
图T称为无向图G的生成树(spanning tree), 如果T为G的生成子图且T为树。
✓定理9.17
任一连通图G都至少有一棵生成。
.. 树树
1.2 生成树
✓ 定理9.18
设G为连通无 向图,那么G的 任一回路与任一生 成树T的关于G的补 G – T ,至少有一 条公共边。
1.3 根树
➢ 定义9.15
每个结点都至多有两个儿子的根树称为 二元树(quasibinary tree)。类似地,每个结点都
至多有n个儿子的根树称为n元树。 对各分支结点 的诸儿子规定了次序(例如左兄右弟)的n 元树称
为n元有序树;若对各分支结点的已排序的诸儿子
规定了在图示中的位置(例如左、中、右),那么
弦组成G的一个割集,它被称为枝t-割集(t-cut set);
而每一条弦e与T中的通路构成一回路,它被称为弦e-回
路(e-circuit)。
. 树
1.2 生成树
✓ 定理9.20
在连通无向图G中,任一回路与任 一割集均有偶数条公共边。
. 树
1.2 生成树
✓ 定理9.21
设G为一连通无向图,T是G的生成树, S = {e1, e2, e3,…,ek}
✓ 定理9.19
设G为连通无 向图,那么G的任 一割集
与任一生成树至少
有一条公共边。
.. 树树
1.2 生成树
➢ 定义9.11
设T为图G的生成树,称T中的边为树枝(branch) 称G – T 中的边为弦(chord)。对每一树枝t,T–t分为
离散数学第四版课后答案(第9章)

第9章 习题解答9.1 有5片树叶.分析 设T 有x 个1度顶点(即树叶).则T 的顶点数Tx x n ,523+=++=的边数.41x n m +=-=由握手定理得方程.∑=+=⋅+⨯+⨯==+=ni ix x vd x m 1.1312233)()4(22由方程解出.5=x所求无向树T 的度数列为1,1,1,1,1,2,2,3,3,3.由这个度数列可以画多棵非同构的无向树,图9.6给出的4棵都具有上述度数列,且它们是非同构的.9.2 T 中有5个3度顶点.分析 设T 中有x 个3度顶点,则T 中的顶点数,7x n +=边数x n m +=-=61,由握手定理得方程.∑=+==+=ni ix v d x m 173)(2122由方程解出x=5.所求无向树T 的度数列为1,1,1,1,1,2,2,3,3,3.由这个度数列可以画多棵非同构的无向树,图9.6给出的4棵都具有上述度数列,且它们是非同构的.9.2 T 中有5个3度顶点.要析 设T 中有x 个3度顶点,则T 中的顶点数x n +=7,边数x n m +=-=61,由握手定理得方程.∑=+==+=ni ix v d x m 173)(2122.由此解出5=x ,即T 中有5个3度顶.T 的度数列为1,1,1,1,1,1,1,3,3,3,3,3.由于T 中只有树叶和3度顶点,因而3度顶点可依次相邻,见图9.7所示. 还有一棵与它非同构的树,请读者自己画出.9.3 加1-k 条新边才能使所得图为无向树.分析 设具有k 个连通分支的森林为G,则G 有k 个连通分支i K T T TT ,,,21全为树,.,,2,1k i =加新边不能在i T 内部加,否则必产生回路.因而必须在不同的小树之间加新边. 每加一条新边后,所得到的森林就减少一个连通分支. 恰好加1-k 条新边,就使得图连通且无回路,因而是树.在加边过程中,只需注意,不在同一人连通分支中加边. 下面给出一种加边方法,取iv 为iT 中顶点,加新边1,,2,1),(1-=+k i vv i i,则所得图为树,见图9.8 给出的一个特例.图中虚线边为新加的边.9.4 不一定.分析 n 阶无向树T 具有1-n 条边,这是无向树T 的必要条件,但不是充公条件.例如, 阶圈(即1-n 个顶点的初级回路)和一个孤立点组成无向简单图具有1-n 条边, 但它显然不是树.9.5 非同构的无向树共有2棵,如图 9.9所示.分析由度数列1,1,1,1,2,2,4不难看出,唯一的4度顶点必须与2度顶点相邻,它与1个2度顶点相邻,还是与两个2度顶点都相邻,所得树是非同构的,再没有其他情况.因而是两棵非同构的树.9.6 有两棵非同构的生成树,见图9.10所示.分析图9.10 是5阶图(5个顶点的图), 5阶非同构的无向树只有3棵,理由如下. 5阶无向树中,顶点数5=n,边数4=m,各顶点度数之和为8,度数分配方案有3种,分别为①1,1,1,1,4;②1,1,1,2,3;③1,1,2,2.2.每种方案只有一棵非同构的树.图9.10所示的5阶图的非同构的生成树的度数列不能超出以上3种,也就是说,它至多有3棵非同构的生成树, 但由于图中无4度顶点,所示,不可能有度数列为①的生成树,于是该图最多有两棵非同构的生成树. 但在图9.10 中已经找出了两个非同构的生成树,其中(1)的度数列为③,(2) 的度数列为②,因而该图准确地有两棵非同构的生成树.9.7 基本回路为: .,,,hfab C gfa C ead C cbad C h g e c====基本回路系统为}.,,,{h g e cC C C C基本割集为:},,{},,{},,,{},,,,,{h g f Sc ed S h c b S h g ce a S fd b a ====基本回路系统为},,,{f d b aS S S S.分析 1°注意基本回路用边的序列表示,而基本割集用边的集合表示.2° 基本回路中,只含一条弦,其余的边全为树枝,其求法是这样的: 设弦),(j iv ve =,则jiv v,在生成树T 中,且在T 中,ji v v ,之间存在唯一的路径ji ,Γ与),(j iv ve =组成的回路为G 中对应弦e 的基本回路.3° 基本割集中,只含一条树枝,其余的边都是弦,其求法是这样的:设树枝),(j iv ve =,则e 为T 中桥,于是eT-(将e 从T中支掉),产生两棵小树1T 和2T ,则}|{21'''中和的两端点分别在中且在T T e G e e S e =e S 为树枝e 对应的基本割集. 显然ee S S e ,∈中另外的边全是弦. 注意,两棵小树1T 和2T ,中很可能有平凡的树(一个顶点).aT -得两棵小树如图9.11中(1) 所示. G 中一个端点在i T 中,另一个端点在2T 中的边为a(树枝), h g c e ,,,,它们全是弦,于是},,,,{h g c e a Sa=bT - 得两棵小树如图9.11中(2) 所示, 其中有一棵为平凡树. G 中一个端点在1T 中,另一个端点在2T 中的边数除树枝b 外,还有弦,,h c 所以, },,{h c b Sb=dT -产生的两棵小树如图9.11中(3) 所示 . G 中一个端点在1T 中,另中一个端点在2T 中的边,除树枝d 外,还有两条弦e c ,,所示, },,{e c d Sd=fT -产生的两棵小树如图9.11中(4) 所示. 由它产生的基本割集为},,{h g f Sf=9.8 按Kruskal 求最小生成树的算法,求出的图9.3(1)的最小生成树T 为图9.12中(1) 所示, 其7)(=T W .(2) 的最小生成树T 为图9.12中(2)所示,其.11)(=T W9.9 421,,B B B为前缀码.分析 在421,,B B B中任何符号串都不是另外符号串的前串,因而它们都是前缀码.而在3B 中, 1是11,101的前缀,因而3B不是前缀码. 在5B 中,,a 是ac aa ,等的前缀,因而5B 也不是前缀码.9.10 由图9.4 (1) 给出的2元前缀码.}11,011,01010,0100,00{1=B由(2) 给出的3元前缀码为.}.2,1,022,0202,0201,0200,01,00{2=B分析 1B 是2元树产生的2元前缀码(因为码中的符号串由两个符号0,1组成),类似地,2B 是由3元树产生的3元前缀码(因为码中符号串由3个符号0,1,2组成).一般地,由r 元树产生r 元前缀码.9.11 (1) 算式的表达式为ji h g f e d c b a *)*()()*)*((((++÷-+.由于使其成为因而可以省去一些括号优先于,,,*,-+÷ji h g f e d c b a **)()*)*((++÷-+.(2) 算式的波兰符号法表达式为.****hij fg bcde a ++-÷+(3) 算式的逆波兰符号法表达式为.****+÷+-+jI hi fg e d abc9.12 答案 A:①; B ②; C:④; D:⑨.分析 对于每种情况都先求出非同构的无向树,然后求出每棵非同构的无向树派生出来的所有非同构的根树.图9.13 中,(1),(2),(3),(4)分别画出了2阶,3阶,4阶,5阶所有非同构的无向树,分别为1棵,1棵,2棵和3棵无向树.2阶无向树只有1棵,它有两个1度顶点,见图9.13中(1)所示,以1个顶点为树根,1个顶点为树叶,得到1棵根树.3阶非同的无向树也只有1棵,见图9.13中(2)所示.它有两个1度顶点,1个2度顶点,以1度顶点为根的根树与以2度顶点为根的树显然是非同构的根树,所以2个阶非同构的根树有两棵.4阶非同构的无向树有两棵,见图9.13中(3)所示. 第一棵树有3片树叶,1个3度顶点, 以树叶为根的根树与以3度顶点为根的树非同构.所以,由第一棵树能生成两个非同构的根树, 见图9.14 中(1)所示. 第二棵树有两片树叶,两个2度顶点,由对称性,以树叶为根的根树与2度顶点为根的根树非同构,见图9.14中(2) 所示. 所以,4阶非同构的根树有4棵.5阶非同构的无向树有3棵,见图9.13中(4)所示. 由第一棵能派生两棵非同构的根树, 由第二棵能派生4棵非同构的根树,由第三棵能派生3棵非同构的根树,所以,5阶非同构的根树共有9棵,请读者将它们都画出来.9.13 答案 A:②; B:②; C:③; D:③; E:③;F:④; G: ④; H:③.分析 将所有频率都乘100,所得结果按从小到大顺序排列:.35,20,15,10,10,5,5=======a b c d e f g w w w w w w w以以上各数为权,用Huffman 算法求一棵最优树,见图9.15所示.对照各个权可知各字母的前缀码如下:a ——10,b ——01,c ——111,d ——110,e ——001,f ——0001,g ——0000.于是,a,b 的码长为e d c ,,,2的码长为g f ,,3的码长为4. W(T)=255(各分支点的权之和),W(T)是传输100按给定频率出现的字母所用的二进制数字,因则传输104个按上述频率出现的字母要用25500⨯个二进制数字..24=1055最后还应指出一点,在画最优树叶, 由于顶点位置的不同,所得缀码可能不同,即有些字母的码子在不同的最优树中可能不同,但一般说来码长不改变.特别是,不同的最优树,它们的权是固定不变的.9.14 答案 A:②; B:④分析用2元有序正则树表示算式,树叶表示参加运算的数,分支点上放运算符,并将被减数(被除数)放在左子树上,所得2元树如图9.16所示.用前序行遍法访问此树,得波兰符号表示法为abc-++de-*.**ghf用后序行遍法访问此树,得逆波兰符号表示法为dec*fghab--++**。
离散数学第9章习题答案

习题91. 设G 是一个(n ,m)简单图。
证明:,等号成立当且仅当G 是完全图。
证明:(1)先证结论:因为G 是简单图,所以G 的结点度上限 max(d(v)) ≤ n-1, G 图的总点度上限为 max(Σ(d(v)) ≤ n ﹒max(d(v)) ≤ n(n-1) 。
根据握手定理,G 图边的上限为 max(m) ≤ n(n-1)/2,所以。
(2) =〉G 是完全图 因为G 具有上限边数,假设有结点的点度小于n-1,那么G 的总度数就小于上限值,边数就小于上限值,与条件矛盾。
所以,G 的每个结点的点度都为n-1,G 为完全图。
G 是完全图 =〉 因为G 是完全图,所以每个结点的点度为n-1, 总度数为n(n-1),根据握手定理,图G 的边数 。
■2. 设G 是一个(n ,n +1)的无向图,证明G 中存在顶点u ,d (u )≥3。
证明:反证法,假设,则G 的总点度上限为max(Σ(d(u)) ≤2 n ,根据握手定理,图边的上限为max(m) ≤ 2n/2=n 。
与题设m = n+1,矛盾。
因此,G 中存在顶点u ,d (u )≥3。
■3.确定下面的序列中哪些是图的序列,若是图的序列,画出一个对应的图来: (1)(3,2,0,1,5); (2)(6,3,3,2,2) (3)(4,4,2,2,4); (4)(7,6,8,3,9,5)解:除序列(1)不是图序列外,其余的都是图序列。
因为在(1)中,总和为奇数,不满足图总度数为偶数的握手定理。
可以按如下方法构造满足要求的图:序列中每个数字ai 对应一个点,如果序列数字是偶数,那么就在对应的点上画ai/2个环,如果序列是奇数,那么在对应的点上画(ai-1)/2个环。
最后,将奇数序列对应的点两两一组,添加连线即可。
下面以(2)为例说明:(6 , 3, 3, 2, 2 ) 对应图G 的点集合V= { v 1,v 2,v 3,v 4,v 5}每个结点对应的环数(6/2, (3-1)/2, (3-1)/2, 2/2,2/2) = (3,1,1,1,1)将奇数3,3 对应的结点v 2,v 3一组,画一条连线其他序列可以类式作图,当然大家也可以画图其它不同的图形。
离散数学(第二版)第9章树

e10, 则分别产生初级回路e1e3e4, e1e4e5e2, e6e8e9,
•
•
•
e7e6e9e10。
•
第九章 树
这些初级回路有一个共同特点: 它们中均只含一条弦,
其余的边均是树枝, 我们称这样的回路为基本回路。 对于
G的每棵生成树T, m-n+1条弦对应着m-n+1个基本回路,
这些基本回路构成的集合称为对应T的基本回路系统。 显
例如图9.1.3中, T1和T2是图G的两棵生成树, 1 和2 是 分别对应于它们的余树。
第九章 树
图9.1.3 图的生成树和余树
第九章 树
由图9.1.3可见, G与T1、 T2的区别是G中有回路, 而 它的生成树中无回路, 因此要在一个连通图G中找到一棵 生成树, 只要不断地从G的回路上删去一条边, 最后所得 无回路的子图就是G的一棵生成树。 于是有如下定理。
这个问题的数学模型为: 在已知的带权图上求权最小 的生成树。
定义9.1.4 设无向连通带权图G=〈V, E, ω〉, G中带 权最小的生成树称为G的最小生成树(最优树)。
定理9.1.4 设连通图G的各边的权均不相同, 则回路 中权最大的边必不在G的最小生成树中。
证明略。
第九章 树
定理的结论是显然的, 由此寻找带权图G的最小生成 树, 可以采用破圈法, 即在图G中不断去掉回路中权最大 的边。
(5) 1, 1, 1, 1, 1, 2, 5
(6) 1, 1, 1, 1, 1, 3, 4
(7) 1, 1, 1, 1, 1, 1, 6
第九章 树
注意到, 不同构的度数列对应不同的树, 但对应同一 度数列的非同构的树不一定唯一, 所以对应(1)有T1, 对应 (2)有T2、 T3和T4, 对应(3)有T5和T6, 对应(4)有T7和T8, 对应(5)有T9, 对应(6)有T10, 对应(7)有T11(见图9.1.2)。
离散数学第九章树知识点总结

生成树的存在性 定理 任何无向连通图都有生成树. 证 用破圈法. 若图中无圈, 则图本身就是自己的生成树.
否则删去圈上的任一条边, 这不破坏连通性, 重复进行 直到无圈为止,剩下的图是一棵生成树. 推论 1 设 n 阶无向连通图有 m 条边, 则 mn1. 推论 2 设 n 阶无向连通图有 m 条边, 则它的生成树的余树 有 mn+1 条边.
{0,10,010, 1010} 不是前缀码
例 在通信中,设八进制数字出现的频率如下:
0:25%
1:20%
2:15%
3:10%
4:10%
5:10%6:5% Nhomakorabea7:5%
采用 2 元前缀码, 求传输数字最少的 2 元前缀码 (称作最佳前
缀码), 并求传输 10n(n2)个按上述比例出现的八进制数字需
要多少个二进制数字?若用等长的 (长为 3) 的码字传输需要
推论 3 设
为 G 的生成树 T 的余树,C 为 G 中任意一个
圈,则 C 与
一定有公共边.
基本回路与基本回路系统
定义 设 T 是 n 阶 m 条边的无向连通图 G 的一棵生成 树,设 e1, e2, … , emn+1 为 T 的弦. 设 Cr 为 T 添加弦 er 产生的 G 中惟一的圈(由 er和树枝组成), 称 Cr 为对应 弦 er的基本回路或基本圈, r=1, 2, …, mn+1. 称{C1, C2, …, Cmn+1}为对应 T 的基本回路系统. 求基本回路的算法: 设弦 e=(u,v), 先求 T 中 u 到 v 的路径 uv, 再并上弦 e, 即得对应 e 的基本回路. 基本割集与基本割集系统定义 设 T 是 n 阶连通图 G 的一棵生成树, e1, e2, …, en1 为 T 的树枝,Si 是 G 的只含树枝 ei, 其他边都是弦
树与平面图PPT教学课件

模糊矩阵的转置
定义 设A = (aij)m×n, 称AT = (aijT )n×m为A的转 置矩阵,其中aijT = aji. 转置运算的性质:
性质1:( AT )T = A; 性质2:( A∪B )T = AT∪BT,
( A∩B )T = AT∩BT; 性质3:( A ° B )T = BT ° AT;( An )T = ( AT )n ; 性质4:( Ac )T = ( AT )c ; 性质5:A≤B AT ≤BT .
0.3 0.4
00..73
合成(° )运算的性质:
性质1:(A ° B) ° C = A ° (B ° C);
性质2:Ak ° Al = Ak + l,(Am)n = Amn;
性质3:A ° ( B∪C ) = ( A ° B )∪( A ° C );
( B∪C ) ° A = ( B ° A )∪( C ° A );
矩阵的合成.
设X = {x1, x2, …, xm}, Y = { y1 , y2 , … , ys}, Z= {z1, z2, … , zn},且X 到Y 的模糊关系R1 = (aik)m×s, Y 到Z 的模糊关系R2 = (bkj)s×n,则X 到Z 的模糊关 系可表示为模糊矩阵的合成:
(R1∪R2 )(x, y) = R1(x, y)∨R2(x, y); 交: R1∩R2 的隶属函数为
(R1∩R2 )(x, y) = R1(x, y)∧R2(x, y); 余:Rc 的隶属函数为Rc (x, y) = 1- R(x, y).
(R1∪R2 )(x, y)表示(x, y)对模糊关系“R1或者 R2”的相关程度, (R1∩R2 )(x, y)表示(x, y)对模糊 关系“R1且R2”的相关程度,Rc (x, y)表示(x, y)对 模糊关系“非R”的相关程度. 模糊关系的矩阵表示
无向树及其性质

第九章树9.1 无向树及其性质定义9.1 连通无回路的无向图称为无向树, 或简称树, 常用T表示树(Tree);平凡图称为平凡树;若无向图G至少有两个连通分支, 每个连通都是树, 则称G为森林(Forest);在无向图中, 悬挂顶点称为树叶(Leaf);度数大于或等于2的顶点称为分支点(Node)无向树有许多性质, 它们是树的充要条件, 因此它们都可看作是树的定义。
定理9.1 设G = <V, E>是n阶m条边的无向图, 则下面各命题是等价的:(1) G是树(2) G中任意两个顶点之间存在唯一的路径(3) G中无回路, 且m = n-1(4) G是连通的, 且m = n-1(5) G是连通的, 且G中任何边均为桥(6) G中没有回路, 但在任何两个不同的顶点之间加一条新边, 在所得图中得到唯一一个含新边的圈证:(1) ⇒ (2)由G的连通性和定理14.5的推论可知: ∀u,v∈V, u与v之间存在路径。
若路径不是唯一的, 设Γ1与Γ2都是u到v的路径。
显然必存在由Γ1和Γ2上边构成的回路, 这就与G中无回路矛盾。
(2) ⇒ (3)先证明: G中无回路。
若G中存在关联某顶点v的环, 则v到v存在长为0和1的两条路经, 这与已知矛盾。
若G中存在长度大于或等于2的圈, 则圈上任何两个顶点之间都存在两条不同的路径, 这与已知条件矛盾。
下面用归纳法证明: m = n-1。
1) n = 1时, G为平凡图, 结论显然成立。
2) 设n ≤ k(k ≥ 1)时, 结论成立。
3) 当n = k+1时设e = (u, v)为G中的一条边, 由于G中无回路, 所以, G-e有两个连通分支G1和G2。
设n i和m i分别为G i中的顶点数和边数, 则n i≤ k(i = 1, 2)。
由归纳假设可知: m i = n i-1, 于是, m=m1+m2+1=n1+n2+1-2=n-1。
(3) ⇒ (4)假设: G不是连通的。
离散数学知识点总结(9)-树

离散数学知识点总结(9)-树⼀、⽆向树和有向树对于任何⽆向图,若图中不存在简单回路,则 m≤n-1⽆向图是⽆向树的四个条件互相等价:连通、不存在简单回路、m=n-1满⾜⾄少2个 每⼀对相异顶点之间存在唯⼀的简单道路 极⼩连通(每⼀条边都是桥) 极⼤⽆圈因此⽆向树必定不含重边和⾃环,⼀定是简单图,⼀定是平⾯图。
⽆向树中度数为1的顶点称为叶⼦,度数⼤于1的顶点称为分枝点。
平凡树:⼀阶简单图,既⽆叶⼦⼜⽆分枝点任何⾮平凡树⾄少有2个叶⼦顶点证明:设n(n≥2) 阶⽆向连通图G的边数满⾜m=n-1,设图中度数为1的顶点数为t,则2m=deg(v1)+...+dev(v n)≥t+2(n-t),得t≥2 或者设⽆向树中存在着a i个度为i的顶点,a1+2a2+...=2m,a1+a2+...=n=m+1,故叶⼦数=a3+2a4+3a5+...+2≥2森林:不含任何简单回路的图。
森林的每个连通分⽀都是树⼆、有向树和根树有向树:不考虑边的⽅向时是⼀棵⽆向树的有向图根树:只有⼀个⼊度为0的顶点,其它顶点⼊度均为1的有向树根树中出度为0的顶点称为叶⼦,出度⼤于0的顶点称为分枝点在根树中,从根到任⼀其它顶点都存在唯⼀的简单道路以v为根的根树:有向图中存在顶点v,使得从v到图中任意其它顶点都存在唯⼀简单道路,⽽且不存在从v到v的简单回路在根树中,由根到顶点v的道路长度称作v的层数(level) ;所有顶点的层数的最⼤值称为根树的⾼度(height)若T的每个分⽀点最多m个⼉⼦,则称T为m叉树;若其每个分⽀点都恰好m个⼉⼦,则称T为m叉正则树正则m叉树,其叶⼦数为t,分枝点数为i,则所有顶点出度之和为mi=所有顶点的⼊度之和t+i-1,故(m-1)i=t-1三、标号树前序遍历结果-+×421×÷632称作前缀表⽰、波兰式将波兰式压栈,当插⼊到×42时将其替换为8后序遍历结果42×1+63÷2×-称作后缀表⽰、逆波兰式将波兰式压栈,当插⼊到42×时将其替换为8中序遍历表达式4×2+1-6÷3×2称作中缀表⽰由前缀表⽰或后缀表⽰可以唯⼀构造表⽰运算式的有序树,但是由中缀表⽰则不⾏此外还有⼀些关于遍历、哈夫曼编码的知识点,数据结构中就有。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
五.最小生成树
设无向连通带权图G=<V,E,W>,T是G的一棵生成树,T各边带 权之和,称为T的权,记作W(T). G的所有生成树中带权最小的生成树称为最小生成树. 最小生成树的求法(避圈法-Kruskal算法): 设G=<V,E,W>中有m条边e1,e2,…,em,它们带的权分别为 a1,a2,…,am, 不妨设a1≤a2 ≤… ≤am. (1)取e1在T中(e1非环,若e1为环,则弃e1) (2)若e2不与e1构成回路.取e2在T中,否则弃e2,再查e3,继续 这一过程,直到形成生成树T为止. 则T是最小生成树.
c
4
2
d
克鲁斯卡尔方法求最小生成树的过程
9.2 根树
一.有向树及根树
一个有向图D,如果略去有向边的方向所得无向图为一 棵无向树,则称D为有向树. 一棵非平凡的有向树,如果有一个顶点的入度为0,其 余顶点的入度均为1,则称此有向树为根树. 入度为0的顶点称为树根; 入度为1、出度为0的顶点称为树叶; 入度为1、出度大于0的顶点称为内点; 内点和树根统称为分支点. 在根树中,从树根到任意顶点的通路长度称为该顶点的 层数,记作l(v); 层数最大的顶点的层数称为树高,记作h(T).
定理2:设T=<V,E>是n阶非平凡的树,则T中至少有2片树叶.
V1 V1
V2
V3
V4
n
V2 V5 V6
2m = ∑ d (vi ) ≥ k + 2(n − k )
i =1
二.生成树、树枝、弦和余树 ⇒ k ≥ 2 生成树、树枝、
m = n −1
定义:设G=<V,E>是无向连通图,T是G的生成子图,并且T是树, 则称T是G的生成树;G在T中的边称为T的树枝. G不在T中的边称为T的弦,T的所有弦的集合的导出子 图称为T的余树.
f
V1 a b h c
V6 e d V5 V4 i
g
V3
Cf=face,Cg=gba,Ch=hdcb,Ci=ied. 图9.1 基本回路系统{Cf,Cg,Ch,Ci} T的基本割集Sa={a,g,f},Sb={b,g,h},Sc={c,h,f},Sd={d,h,I}, Se={e,i,f};基本割集系统为{Sa,Sb,Sc,Sd,Se}
例9.2(1)求带权为1,3,4,5,6的最优2元树. (2)求带权为2,3,5,7,8,9的最优2元树. 解: (1)
1 3 4 5 6 4 4 3
8 11 4 1 3 11 4 4 1 8 6 4 1 3 4 3 4 5 6
5
6
=>
1
8 5 6
=>
19
=>
5
W(T)=1*3+3*3+4*2+5*2+6*2=42
例9.3在通信中,A、B、C、D出现的频率为1、5、7、3, 求传输它们的最佳前缀码(哈夫曼编码)。 解:
0
7
16
1 0
9
1(A) 的编码为: 100 1
5
5(B) 的编码为: 11 7(C) 的编码为: 0 3(D) 的编码为: 101 字符 编码 1 100 5 11 7 0 3 101
0
1
4
若r元完全正则树T是有序树,则称T是r元有序完全正则树.
V1 V1 1 V1 2 V3 1 V4 V5 V6 V5 V5 V6 2 3
V2
V3
V4
V2
V3
V2
V4
V1 1 2
V1 1
V1 2
V2 1 V4
V3 2 V5 V4
V2
V3 1 V5 V6 V7 V4
V2 2 V5
V3
1 V6
2 V7
三.哈夫曼树(Huffman树) 哈夫曼树(Huffman树 (Huffman
设T是n阶m条边的无向图G的生成树,G中只含T的一条弦,其 余的边都是T为G对应T的基本回路系统. 说明:基本回路的个数为m-n+1
a V1 V2 d V3 b f V4 c e V1 a V2 e b f V4 c V3 g V5 h d
V2
V5
V2
V5
V2
V3
V4
V3 (1)
V4
V3 (2)
V4
V5
V6 (3)
V7
定理1(树的等价定义) 设G=<V,E>,则下面各命题是等价的: (1)G连通而不含回路; (2)G的每对顶点之间具有唯一的一条路径; (3)G是连通的且m=n-1; (4)G中无回路且m=n-1; (5)G中无回路,但在G中任意两个不相邻的之间增加一条边 就形成唯一的一条初级回路. (6)G是连通的且G中每条边都是桥; (7)G是连通的,但删除任何一条边后,就不连通了; 其中n为G中顶点数,m为边数.
+ d * e f g + * /
a
*
b
c
V1
V1
V2
V3
V4 也可去掉箭头
V2
V3
V4
V5
V6
V5
V6
V6
V7
图 9.5
V6
V7
一棵根树(一棵家族树)的有关术语: 儿子(孩子)结点,父亲(双亲)结点,祖先结点,子孙(后代)结点.
二.根树的分类和术语
1.根子树:设T为一棵根树,a为T中一个顶点,且a不是树根, 称a及其后代(子孙)导出的子图T’为T的以a为根 的子树,简称根子树. 2.有序树:如果将根树每一层上的顶点都规定次序,此根树 称为有序树. 3.其它:设T为一棵根树, 若T的每个分支点至多有r个儿子,则称T为r元树. 若T的每个分支点恰好有r个儿子,则称T为r元正则树. 若r元树T是有序的,则称T是r元有序树. 若r元正则树T是有序的,则称T是r元有序正则树. 若T是r元正则树,且所有树叶的层数相同,都等于树高, 则称T为r元完全正则树.
2元树T的t片树叶分别带权值w1,w2,…,wt,称W(T) =
t
∑wl(w )
i=1 i i
为T的权,其中l(wi)为带权wi的树叶的层数.在所有带权为 2元树中,其权最小的2元树称为最优树,也称为Huffman树. 最优树的求法(Huffman算法) 给定权值w1,w2,…,wt,且w1≤w2 ≤ … ≤wt (1)连接w1,w2为权的两片树叶,得一分支点,其权为w1+w2, (2)在w1+w2,w3,…,wt中选出两个最小的权值,连接它们对 应的顶点(不一定都是树叶),得分支点及所带的权. (3)重复(2)直到形成t-1个分之点,t片树叶为止.
b
i
后序行遍:decfbghia
c
f
g
h
d
e
例9.4(1)用2元有序树表示算式 ((a+(b*c))*d+e)/(f*g) (2)用3种行遍法访问(1)并写出结果. 中序行遍法: ((a+(b*c))*d+e)/(f*g) 前序行遍法:波兰符号法 /+*+a*bcde*fg 后序行遍法:逆波兰符号法 abc*+d*e+fg*/
基本回路 Ca=aed, Cb=bdf, Cc=cef, 基本回路系统 {Ca,Cb,Cc}
基本回路 Ca=aeh Cb=bfe Cc=cgf Cd=dhg
图9.2
基本回路系统{Ca,Cb,Cc,Cd}
四.基本割集与基本割集系统
设T是n阶m条边的无向图G的生成树,G中只含T的一条树枝,其 余边全为T的弦的割集(边割集)称为G中对应T的基本割集. G中全体基本割集的集合称为对应T的基本割集系统. 说明:基本割集的个数为n-1. 例9.1图9.3中实线边所 构成的子图是G的一棵生 成树T,求T对应的基本回 路和基本回路系统,基本 V2 割集和基本割集系统. 解:T的基本回路为:
例如:
5
b a
a
e
5 1 5 4 2
d f
b c
1
f d
e
e b c
a
e
1
f
2
d
e
5 6
c
3
6
(a) 选第 1 条边
a
(b) 选第 2 条边
a
1
b
1 2
d b
3
c
f
3
c
f
4
2
d
(c ) 选第 3 条边
a b e
(d) 选第 4 条边
5
c
1
f
a
5 4 2
d 或者 b
e
1
f
3
(e ) 选第 5 条边
3
a a e e b c c (1)无向图 d (2)生成树 d b b
a
c (3)余树
d
图9.1 注)生成树不唯一,余树也不唯一并且余树不一定是树,
定理3:任何连通图G至少存在一棵生成树. 推论:设T是n阶m条边无向连通图G中的生成树, 则T有n-1条树枝,m-(n-1)=m-n+1条弦.
三.基本回路与基本回路系统
第9 章 树
9.1 无向树及生成树
8.2 根树及其应用
9.1 无向树及生成树
一.树和森林
定义:连通而不含回路的无向图称为无向树.简称树,用T表示. 连通分支数大于等于2,且每个连通分支均是树的非连通 无向图称为森林.平凡图称为平凡树. 在树T中,度数为1的顶点称为树叶,非树叶的顶点称为分支点.
v1 V1 V1
1
3
(a) 哈夫曼树
(b) 哈夫曼编码
四.2元有序正则树的遍历 .2元有序正则树的遍历
(1)中序行遍法:其访问次序为:左子树,树根,右子树; (2)前序行遍法:其访问次序为:树根,左子树, 右子树; (3)后序行遍法:其访问次序为:左子树,右子树,树根;