离散数学 第5章 树及其应用
离散数学中的图的树与生成树的计数

在离散数学中,图是一个由点和边组成的抽象数学模型。
其中,树是一种特殊的图,它是一个无环连通图。
在图论中,树扮演了重要的角色,它具有许多有趣的性质和应用。
而生成树则是树的一个特殊子集,它由给定图中的所有顶点和部分边构成。
本文将介绍图的树的基本概念,并探讨生成树的计数方法。
首先,让我们来看看图的树。
树是一种无环连通图,其中任意两个顶点之间存在唯一一条路径。
它具有以下性质: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矩阵树定理。
离散数学-图论-树

二叉树
• 定义:二元有序树称为二叉树.
– 每个顶点最多有两个子顶点,一般称为左子顶 点和右子顶点. – 类似地,称每个顶点的左子树和右子树. – 每个顶点的出度都是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
离散数学中的生成树与生成树计数

离散数学是计算机科学中的重要学科,其中生成树是一个重要的概念。
在图论中,生成树是一棵树,它包含了图中的所有顶点,并且是由图边组成的无环连通子图。
生成树在图论中有着重要的应用,特别是在计算机网络、运筹学和电路设计等领域。
生成树的概念与基础就是组成它的边是有限的,并且连接图中的所有顶点,但没有形成圈回到起点。
生成树通常是用来描述一个系统的最小连接方式。
生成树可以应用于计算机网络的设计中,用于构建最小生成树算法,以便在网络中选择最小的数据传输路径。
此外,在运筹学中,生成树被用于求解最小生成树问题,即为一个加权图找到一棵包含所有顶点的生成树,使得树中边的权重之和最小。
在离散数学中,生成树计数是一个重要的研究分支。
生成树计数是指对给定图,计算其生成树的数目。
生成树计数的问题可以通过使用基于图论和组合数学的算法来解决。
通常,生成树计数的问题与相应图的特性和性质密切相关。
对于一个简单图来说,如果图中任意两点之间至少有一条边,那么该图一定存在生成树。
对于有 n 个顶点的连通图来说,它的生成树数量可以通过Cayley公式计算得到。
Cayley公式表明,一个有 n 个标号的顶点的完全图的生成树数量等于 n^(n-2)。
而对于非完全图,生成树的计数问题则较为困难。
在处理非完全图的生成树计数问题时,可以使用基于递归和动态规划的算法来解决。
一个常见的方法是使用Kirchhoff矩阵树定理,它将生成树计数的问题转化为计算矩阵的行列式的问题。
Kirchhoff矩阵树定理提供了一种计算给定图的生成树数目的有效算法,通过计算图的基尔霍夫矢量的一个特征值,可以得到图的生成树的数目。
另一个常见的方法是使用Prufer编码,它是一个用于描述无环连通图的序列。
通过Prufer编码,我们可以将计算生成树的问题转化为计数树的问题。
通过对无向图进行Prufer编码,我们可以计算出生成树的数目,并且可以根据生成树的数目来确定该无向图的种类和特征。
武汉大学《离散数学》课件-第5章

vi是终点), 则称为通路, v0是通路的起点, vl是通路的终点, l为通路的长度. 又若v0=vl,则称为回路.
(2) 若通路(回路)中所有顶点(对于回路, 除v0=vl)各异,则称为 初级通路(初级回路).初级通路又称作路径, 初级回路又称 作圈.
32
通路与回路(续)
定理 在n阶图G中,若从顶点u到v(uv)存在通 路,则从u到v存在长度小于等于n1的通路. 推论 在n阶图G中,若从顶点u到v(uv)存在通 路,则从u到v存在长度小于等于n1的初级通路.
定理 在一个n阶图G中,若存在v到自身的回路,则 一定存在v到自身长度小于等于n的回路. 推论 在一个n阶图G中,若存在v到自身的简单回 路,则存在v到自身长度小于等于n的初级回路.
D
D[{e1,e3}]
D[{v1,v2}]
26
补图
定义 设G=<V,E>为n阶无向简单图,以V为顶点集, 所有使G成为完全图Kn的添加边组成的集合为边集 的图,称为G的补图,记作 G . 若G G , 则称G是自补图.
例 对K4的所有非同构子图, 指出互为补图的每一对 子图, 并指出哪些是自补图.
图论
1
图论部分
第5章 图的基本概念 第6章 特殊的图 第7章 树
2
第5章 图的基本概念
5.1 无向图及有向图 5.2 通路, 回路和图的连通性 5.3 图的矩阵表示 5.4 最短路径, 关键路径和着色
3
5.1 无向图及有向图
▪ 无向图与有向图 ▪ 顶点的度数 ▪ 握手定理 ▪ 简单图 ▪ 完全图 ▪ 子图 ▪ 补图
27
5.2 通路、回路、图的连通性
离散数学PPT课件 5树与生成树(ppt文档)

(b)
4.森林:一个无向图的每个连通分支都是树.如(b)
5.与树定义等价的几个命题
定理8-9.1给定图T,以下关于树的定义是等价的.
⑴无回路的连通图.
⑵无回路且e=v-1 其中e是T的边数,v是T的结点数.
⑶连通的且e=v-1.
⑷无回路但添加一条新边则得到一条仅有的回路.
⑸连通的,但删去任一条边,T便不连通.
v2 71
2 3 2
v3 51
v1 8 v8 7 v5 3 v4
4 2 v7 4
34 6 6 v6
Kruskal算法: 设G是有n个结点,m条边(m≥n-1)的连通图. S=Φ i=0 j=1
将所有边按照权升序排序: 43;1
⑹每对结点之间有一条且仅有一条路.
证明:⑴⑵:已知T是连通无回路图,通过不断地增加T中
的结点数,归纳证明.
当 v=2时, T如右图所示,e=1 显然e=v-1.
以后对T在保证连通又无回路的前提下每增加一个结点,
也增加一条边. 设最后T有v个结点e条边, 所以 e=v-1.
⑵⑶: 已知T是无回路的,且e=v-1.(推出T是连通的) 假设T不是连通的,设T有k个连通分支, T1,T2,...,Tk,(k≥2) 因为它的每个连通分支都是连通无回路的,所以都是树, 设Ti有结点数vi,边数ei, 所以边数 ei =vi-1 设T有v个结点,e条边. 所以
边 e78 e56 e35 e46 e67 e58 e12 e18
权4 4 5 6 6 7 7 8
v2
2 3
7 12
v3 51
v1 8 v8 7 v5 3 v4
离散数学 树(思维导图)

树
1
无向树:连通且不含任何简单回路的无向图称为无向树,简称树。
树中度数为1的顶点称为叶子,度数大于1的顶点称为分枝点
2
树的相关性质
定理1 : 设n(n≥2)阶无向连通图G的边数满足m=n-1,则图G中至少存在两个度数为
1的顶点
定理2 : 设T是(n,m)-无向图,则下述命题相互等价
1.T是树,即T连通且不存在简单回路
2.T的每一对相异顶点之间存在唯一的简单道路
3.T不存在简单回路,但在任何两个不相邻的顶点之间加一条新边后得到的图中存
在简单回路。
(也称作“极大无圈”)
4.T连通,但是删去任何一边后便不再连通,即T 中每一条边都是桥。
(也称作“极
小连通")
5.T是树,即T连通且不存在简单回路
6.T连通且m=n-1
7.T不存在简单回路且m=n-1
定理3 : 无向树都是平面图。
定理4 : 假设无向树T中有aᵢ个度数为i的顶点,aᵢ则T的叶子数为\sum \limits
_{i=3}(i-2) \times a_{i}+2
生成树 : 若连通图G的支撑子图T是一棵树,则称T为G的生成树
或支撑树 一个连通图可以有多个不同的支撑树。
最小生成树 : 给定一个无向连通赋权图,该图所有支撑树中各
边权值之和最小者称为这个图的最小支撑树。
kruskal算法
备注:
1. 根据这个定义,一阶简单图K₁也是树,称作平凡树,它是一个既无叶子又无分枝点的特殊树 由定义可知,树必定是不含重边和自环的,即树一定是简单图。
不含任何简单回路的图称为森林(显然,森林的每个连通分支都是树
2. 无向,连通,m=n-1。
离散数学及其应用课件:树

树
图7-13 二叉树
树
例7.11 计算机中存储的文件目录,目录可以包含子目录
和文件。图7-14用多叉树表示一个文件系统。C表示根目录,
可以表示成根树,内点表示子目录,树叶表示文件或空目录。
树
图7-14 多叉树表示的文件系统
树
2.二叉树的遍历
定义7.10 对于一棵根树的每个结点都访问一次且仅一次
树
图7-16 给定单词二叉搜索树
树
7.2.3 最优二叉树及其应用
1.哈夫曼树
树
例7.14 计算图7-17所示带权二叉树的权值。
图7-17-带权二叉树
树
7.2.1 根树的概念
定义7.6 一个有向图D,如果略去有向边的方向所得的无
向图为一棵无向树,则称D为有向树。换句话说,若有向图的
基图是无向树,那么这个有向图为有向树。入度为0的顶点称
为树根(Root),入度为1且出度为0的顶点称为树叶;入度为1且
出度大于0的顶点称为内点。内点和树根统称为分支点。
有一种特殊结构的有向树叫根树。
图7-2 无向图
树
树
例7.2 设T 是一棵树,它有三个2度结点,两个3度结点,一
个4度结点,求T 的树叶数。
树
7.1.2 生成树的概念与性质
1.生成树的概念
定义7.2 设G=<V,E>是无向连通图,T 是G 的生成子图,并
且T 是树,则称T 是G的生成树(SpanningTree),记为TG 。
树
定理7.1 设G=<V,E>是n 阶无向图,G 中有m 条边,则下面
关于G 是树的命题是等价的:
(1)G 连通而不含回路;
(2)G 的每对顶点之间具有唯一的一条路径;
《离散数学课件》5树讲义

带权图的最小生成树
例 假设有分布在不同建筑物
中的5台计算机C1, C2, C3, C4, C5。计算机连接的可能 方案以及每种连接方式的
成本(单位:元)如右图 所示。
C1 100 C2
900 120
C3
450
370 400
C4 200
C5
C1
C2
C3
C4
C5
左图是成本最低 的安装方案。
19/60
8/60
例2 已知无向树T有5片树叶, 2度与3度顶点各1个, 其 余顶点的度数均为4. 求T的阶数n, 并画出满足要求的 所有非同构的无向树. 解 设T的阶数为n, 则边数为n1, 4度顶点的个数为 n7. 由握手定理得
2m=2(n1)=51+21+31+4(n7) 解出n=8, 4度顶点为1个.
例
17/60
实例
例 图中红边为一棵生成树, 求对应它的基本回路系统 与基本割集系统
解 弦e,f,g对应的基本回路分别为 Ce=e b c, Cf=f a b c, Cg=g a b c d, C基={Ce, Cf, Cg}. 树枝a,b,c,d对应的基本割集分别为 Sa={a, f, g}, Sb={b, e, f, g}, Sc={c, e, f g}, Sd={d, g}, S基={Sa, Sb, Sc, Sd}.
6
无向树的性质(续)
定理2 设T 是 n 阶非平凡的无向树,则T中至少 有两片树叶. 证 设T有x片树叶,由握手定理及定理1可知,
2(n 1) d(vi ) x 2(n x)
由上式解出x2.
7
例1 已知一棵树有5个4度顶点,3个3度顶点, 3个2度顶点,问有几个一度顶点?
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例题3: 以下命题为真的是( D )。 A)无向完全图都是欧拉图 B)有n个结点n-1 条边的无向图都是树 C)无向完全图都是平面 图 D)树的每条边都是割边 例题4: 无向完全图 K 4 是( B )。 A.欧拉图 B. 汉密尔顿图 C. 树 D. 非平面图 例题5: 设无向图G=<V,E>, 那么图G中V与E满足什 么条件,图G一定是树。 解:图G连通且E=V-1,那么图G一定是树。
a
3
d
W (T ) 7
3
b
1
c
例题7:所有的边。从最小 11 6 4 边(d,e)开始选取,再选取(d,a), 9 再选取(e,a)和(b,c),但(e,a)构成 c d 13 回路,所以应去掉,再选取(c,a), 这时已连接了所有的结点,最小 a 生成树求出。 6
a
b
T=<{a,b,c,d,e}, {(d,e),(d,a),(c,a),(b,c)}>。
e
6
7
5
4
c
d
5.2
根树的有关定义
一、根树的定义 1。恰有一个顶点的入度为0,其余顶点的入度均 为1的有向图称为根树。 根树中入度为0顶点称为树根,出度为0的顶点称 为树叶,入度为1出度不为0的顶点称为内点,树根 和内点统称为分支点。 2。正则树与完全树 ⑴每个分支点的出度最多为m的树称为m叉树, ⑵每个分支点的出度恰为m的树称为m叉正则树, ⑶顶点到树根的长度称为该顶点的层树, ⑷每个树叶的层数都相同的正则树称为完全树, ⑸m=2的二叉正则树简称为二叉树。
计算机数学基础(上)
第2编
第五章
图论
树及其应用
5.1
树的定义及性质
一、树的定义与表示 1。连通且无回路的无向图称为树,用T表示。 T中的1度结点称为树叶,大于1度的结点称为分 支点。 孤点称为平凡树,仅由树组成的无向图称为森林。 2。树的性质 ⑴连通且无回路,⑵|E|=|V|-1,⑶增加任意一条 边必出现回路,⑷删除任意一条边必不连通,⑸每 对结点间仅有一条通路。 3。任何非平凡树中至少有2片树叶。
4。最小生成树 在带权图G中所生成的总权数最小的生成树称为 最小生成树。 5。最小生成树的求法——破圈法 选取权数最大的边所在的回路,去掉其中权数 最大的边,如此做下去,直到求出生成树为止。这 样求出的生成树一定是最小生成树。 还有一种方法称为避圈法。先去掉所有的边,然 后从权数最小的边的开始,从小到大逐步选取,如果 所选取的边和已选取的边构成了回路,则不选取这条 边重新选取,直到连接完所有的结点。这样求出的树 就是最小生成树。
3。根树的有关定理 [定理1] 在m叉正则树中,若树叶数为 t ,分支数 为 i ,则 (m 1)i t 1 ,特别在二叉树中 i t 1 。 在根树中,分支点的长度称为内部通路长度, 树叶的长度称为外部通路长度 [定理2] 若二叉正则树有n个分支点,且内部通路长 度总和为 I ,外部通路长度总和为E ,则 E I 2n 。 例题8: 设T是有8片树叶的二叉树,则T中含有多少条边, 并以此验证定理2。 解: t 8, i t 1 7, v t i 15, e v 1 14 n 7, I 1 2 2 4 10, E 8 3 24, E I 2n
例题1: 设G=<V,E>是有p个结点s条边的连通图,则从G 中删去 条边,才能确定G的一棵生成树。 s 解:设要删去k条边, k p 1, k s 1 p 例题2: 设G是有6个结点的完全图,从G中删去 C 条 边则能得到树。 A) 6 B) 9 C) 10 D) 15 解:∵G是有6个结点的完全图,∴G中共有 6×5/2=15条边,要使G成为树,G中只应留下5条 边,故应删去10条边,选C。
例题6: 1 2 带权图如右,求图的最小生成树 6 5 e 4 解:选取含最大边(c,d)的回路cdec, 3 删去其中权数最大的边(c,d),然后 b 1 c 再选取含最大边(a,b)的回路abea,删去其中权数最 大的边(a,b),再选取含最大边(c,e)的回路bceb,删 去其中权数最大的边(c,e),再选取含最大边(a,d)的 回路adea,删去其中权数最大的边(a,d),即得最小 a 生成树。 d 1 T=<{a,b,c,d,e},{(c,b),(b,e),(e,a),(e,d)}>。 e 2
二、生成树
1。生成树 若图G的生成子图是一棵树,则称此树是G的生 成树。 2。树的补 图G中不属于生成树T的边的集合称为树T的补。 3。生成树的求法 一般可用破圈法做,即把图G中的回路去掉一 条边,使它不再是回路。如此做下去,直到恰好把 所有的回路都破坏掉,就得到了生成树。 用破圈法一共要去掉 e 1 v 条边。