离散数学sec9 树
合集下载
离散数学 图论-树

中序遍历(次序:左-根-右) 前序遍历(次序:根-左-右) 后序遍历(次序:左-右-根) b 中序遍历: c b e d g f a I k h j 前序遍历: a b c d e f g h i k j 后序遍历: c e g f d b k i j h a
例:给定二叉树,写出三种访问 结点的序列
是否为根树
(a) (no)
(b) (no)
(c) (yes)
从树根到T的任意顶点v的通 路(路径)长度称为v的层数。 v5的层数为 层。
层数最大顶点的层数称为树 高.将平凡树也称为根树。 右图中树高为( )。
v1
v2 v3
v4 v8v5Fra bibliotekv6v7 v10
v9
在根树中,由于各有向边的方向是一 致的,所以画根树时可以省去各边上的所 有箭头,并将树根画在最上方.
等长码:0-000;1-001;2-010;3-011;4-100; 5-101;6-110;7-111. 总权值: W2=3*100=300
4、二叉树的周游(遍历)
二叉树的周游:对于一棵二叉树的每一个结点都访问一次且 仅一次的操作 1)做一条绕行整个二叉树的行走路线(不能穿过树枝) 2)按行走路线经过结点的位臵(左边、下边、右边) 得到周游的方法有三种: 中序遍历(路线经过结点下边时访问结点) 访问的次序:左子树-根-右子树 前序遍历(路线经过结点左边时访问结点) 访问的次序:根-左子树-右子树 后序遍历(路线经过结点右边时访问结点) 访问的次序:左子树-右子树-根
2、根树中顶点的关系
定义:设T为一棵非平凡的根树, v2 ∀vi,vj∈V(T),若vi可达vj,则称vi为 vj的祖先,vj为vi的后代; v4 v5 若vi邻接到vj(即<vi,vj>∈E(T),称 vi为vj的父亲,而vj为vi的儿子 v8 若vj,vk的父亲相同,则称vj与vk是兄 弟
离散数学 树

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

11
无向树的性质
定理16.2 设T是n阶非平凡的无向树,则T中至少有两片树叶。
证明
设T有x片树叶,由握手定理及定理16.1可知,
2(n 1) d(vi ) x 2(n x)
由上式解出x≥2。
12
例16.1
例16.1 画出6阶所有非同构的无向树。
解答 设Ti是6阶无向树。 由定理16.1可知,Ti的边数mi=5, 由握手定理可知,∑dTi(vj)=10,且δ(Ti)≥1,△(Ti)≤5。 于是Ti的度数列必为以下情况之一。
(1) 1,1,1,1,1,5 (2) 1,1,1,1,2,4 (3) 1,1,1,1,3,3 (4) 1,1,1,2,2,3 (5) 1,1,2,2,2,2
(4)对应两棵非同构的树, 在一棵树中两个2度顶点相邻, 在另一棵树中不相邻, 其他情况均能画出一棵非同构 的树。
13
例16.1
人们常称只有一个分支点,且分支点的度数为n-1的 n(n≥3)阶无向树为星形图,称唯一的分支点为星心。
知,G-e已不是连通图, 所以,e为桥。
9
(5)(6)
如果G是连通的且G中任何边均为桥,则G中没有回路,但在任 何两个不同的顶点之间加一条新边,在所得图中得到唯一的 一个含新边的圈。
因为G中每条边均为桥,删掉任何边,将使G变成不连通图, 所以,G中没有回路,也即G中无圈。
又由于G连通,所以G为树,由(1) (2)可知,
u,v∈V,且u≠v,则u与v之间存在唯一的路径Г,
则Г∪(u,v)((u,v)为加的新边)为G中的圈, 显然圈是唯一的。
10
(6)(1)
如果G中没有回路,但在任何两个不同的顶点之间加一条新边, 在所得图中得到唯一的一个含新边的圈,则G是树。
无向树的性质
定理16.2 设T是n阶非平凡的无向树,则T中至少有两片树叶。
证明
设T有x片树叶,由握手定理及定理16.1可知,
2(n 1) d(vi ) x 2(n x)
由上式解出x≥2。
12
例16.1
例16.1 画出6阶所有非同构的无向树。
解答 设Ti是6阶无向树。 由定理16.1可知,Ti的边数mi=5, 由握手定理可知,∑dTi(vj)=10,且δ(Ti)≥1,△(Ti)≤5。 于是Ti的度数列必为以下情况之一。
(1) 1,1,1,1,1,5 (2) 1,1,1,1,2,4 (3) 1,1,1,1,3,3 (4) 1,1,1,2,2,3 (5) 1,1,2,2,2,2
(4)对应两棵非同构的树, 在一棵树中两个2度顶点相邻, 在另一棵树中不相邻, 其他情况均能画出一棵非同构 的树。
13
例16.1
人们常称只有一个分支点,且分支点的度数为n-1的 n(n≥3)阶无向树为星形图,称唯一的分支点为星心。
知,G-e已不是连通图, 所以,e为桥。
9
(5)(6)
如果G是连通的且G中任何边均为桥,则G中没有回路,但在任 何两个不同的顶点之间加一条新边,在所得图中得到唯一的 一个含新边的圈。
因为G中每条边均为桥,删掉任何边,将使G变成不连通图, 所以,G中没有回路,也即G中无圈。
又由于G连通,所以G为树,由(1) (2)可知,
u,v∈V,且u≠v,则u与v之间存在唯一的路径Г,
则Г∪(u,v)((u,v)为加的新边)为G中的圈, 显然圈是唯一的。
10
(6)(1)
如果G中没有回路,但在任何两个不同的顶点之间加一条新边, 在所得图中得到唯一的一个含新边的圈,则G是树。
离散数学 课件 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}.
离散数学-树

该n元有序树又称n元位置树。2元位置树各分支结点 的左右儿子分别称为左儿子和右儿子。
离散数学导论
. 树
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分为
离散数学导论
. 树
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分为
《离散数学》课件-第九章 树(A)

• 证明 除根之外的每个结点都是分支点的儿子。因 为每个分支点都有m个儿子,所以,在树中除根之 外还有mi个结点。因此,这棵树共有mi+1个结点。
定理9.3.2
• 定理9.3.2一个m元正则树T 1. 若T有n个结点,则有i=(n−1)/m个分支点和 l=[(m−1)n+1]/m片树叶; 2. 若T有i个分支点,则有n=mi+1个结点和l=(m−1)i+1片树叶; 3. 若T有l片树叶,则有n=(ml−1)/(m−1)个结点和i=(l−1) /(m−1)个分支点。
大于等于2,则 2e deg(v) 2k ,从而ek,,即图T至少有k条边,与e= vV
n-1矛盾。在T中删去1度结点v0及其关联的边,得到新图T也是连通的。 根据归纳假设,T无回路,e= n-1,将删去的1度结点v0及其关联的边添 入T得到图T ,T中仍无回路,且e= n-1。
➢ (4)(5)。用反证法证明。假设在T的每一对结点之间的简单路不唯
T1
T2
T3
9
生成树
• 定义9.2.1 给定连通图G,如果它的生成子图TG是树,则称TG为G的生成树。生 成树TG中的边称为树枝;G中的不在TG中的边称为弦;TG的所有弦的集合 称为生成树TG的余树。 例如 图中黑边构成生成树 红边构成余树
注意: 余树一般不是树
10
例题
• 例9.2.1 在图9.2a.1中,哪e 些是图9a.2.1(1e)的生成树a? e
• 证明 用归纳法对高度h进行归纳证明。
• 假设高度h=1。高度h=1的m元树由根结点及其不超过m个子 结点组成,每个子结点都是树叶。因此高度为h的m元树里至 多有m1=m片树叶。
• 因此,数据集D上的k聚类就是求使得 D( ) 最大的k划分。
定理9.3.2
• 定理9.3.2一个m元正则树T 1. 若T有n个结点,则有i=(n−1)/m个分支点和 l=[(m−1)n+1]/m片树叶; 2. 若T有i个分支点,则有n=mi+1个结点和l=(m−1)i+1片树叶; 3. 若T有l片树叶,则有n=(ml−1)/(m−1)个结点和i=(l−1) /(m−1)个分支点。
大于等于2,则 2e deg(v) 2k ,从而ek,,即图T至少有k条边,与e= vV
n-1矛盾。在T中删去1度结点v0及其关联的边,得到新图T也是连通的。 根据归纳假设,T无回路,e= n-1,将删去的1度结点v0及其关联的边添 入T得到图T ,T中仍无回路,且e= n-1。
➢ (4)(5)。用反证法证明。假设在T的每一对结点之间的简单路不唯
T1
T2
T3
9
生成树
• 定义9.2.1 给定连通图G,如果它的生成子图TG是树,则称TG为G的生成树。生 成树TG中的边称为树枝;G中的不在TG中的边称为弦;TG的所有弦的集合 称为生成树TG的余树。 例如 图中黑边构成生成树 红边构成余树
注意: 余树一般不是树
10
例题
• 例9.2.1 在图9.2a.1中,哪e 些是图9a.2.1(1e)的生成树a? e
• 证明 用归纳法对高度h进行归纳证明。
• 假设高度h=1。高度h=1的m元树由根结点及其不超过m个子 结点组成,每个子结点都是树叶。因此高度为h的m元树里至 多有m1=m片树叶。
• 因此,数据集D上的k聚类就是求使得 D( ) 最大的k划分。
离散数学(第二版)第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, 其他边都是弦
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
20
实例
例5 求图的一棵最小生成树
避圈法
W(T)=38
21
实例
例5 求图的一棵最小生成树
Prim算法
W(T)=38
22
作业
第九章:3,6,8,10,11
第9章 树
• 无向树及其性质 • 生成树
1
无向树及其性质
• 无向树 • 无向树的性质
2
无向树的定义
无向树: 连通无回路的无向图 平凡树: 平凡图 森林: 每个连通分支都是树的非连通的无向图 树叶: 树中度数为1的顶点 分支点: 树中度数2的顶点
例如
(a)
(b)
3
无向树的性质
定理9.1 设G=<V,E>是n阶m条边的无向图, 下面 各命题是等价的: (1) G是树(连通无回路); (2) G中任意两个顶点之间存在惟一的路径; (4) G中无回路且m=n1; (3) G是连通的且m=n1; (6) G是连通的且G中任意一条边均为桥. (5) G中无回路, 但在任何两个不相邻的顶点之间 加一条边所得图中有惟一的一条初级回路.
在集合E中选取权值最小的边(u, v),其中u为集合Vnew中的元素, 而v则是V中没有加入Vnew的顶点(如果存在有多条满足前述条件即具 有相同权值的边,则可任意选取其中之一);
将v加入集合Vnew中,将(u, v)加入集合Enew中; 输出:使用集合Vnew和Enew来描述所得到的最小生成树。
{{a,f,g}, {e,b,f,g}, {c,b}, {d,g} }
17
基本割集与基本割集系统
• 求基本割集 设e为生成树T的树枝,Te为两棵小树T1与 T2,令Se ={e|eE(G)且e的两个端点分别属于 T1与T2},则Se为e对应的基本割集。
例4 图中红边为一棵生成树, 对应它的基本割集系统为 {{a,f,g}, {e,b,f,g}, {c,b}, {d,g} }
定理的证明(续)
(5) G中无回路, 但在任何两个不相邻的顶点之间加一条 边所得图中有惟一的一条初级回路. (6) G是连通的且G中任意一条边均为桥
(1)(5) 由(2), 任意2个不相邻的顶点之间有一条惟 一的路径, 故在这2个顶点之间添加一条新边, 必得到一条 惟一的初级回路.
(1)(6) 删除任一边均有m=n-2,非联通图,G中任意一 条边均为桥.
最小生成树
图G的每一条边e附加一个实数w(e), 称作边e的权. 图G连 同附加在边上的权称作带权图, 记作G=<V,E,W>. 设H是 G的子图, H所有边的权的和称作H的权, 记作W(H). 最小生成树: 带权图权最小的生成树
避圈法 (Kruskal) (1) 将所有非环边按权从小到大排列, 设为e1, e2, …, em (2) 令T = (3) For k=1 to m Do
4
定理的证明
(1) G是树(连通无回路) (2)任两个顶点之间存在惟一的路径
(1)(2) 由连通性可知, 任意2个顶点之间有一条路径. 又, 假设某2 个顶点之间有2条路径, 则这2条路径可组合成一条回路, 与树的定 义矛盾. (2)(1) 连通性显然,无回路用反证法。
(3) G是连通的且m=n1;
(6)(1) G中无回路, 否则删去回路上任意条边, G仍连通.
7
无向树的性质(续)
定理9.2 非平凡的无向树至少有两片树叶 证 设有n(n>1)个顶点, x片树叶, 由握手定理和前定 理, 有
2(n 1) d(vi ) x 2(n x)
解得 x2.
8
实例
例1 已知无向树T中, 有1个3度顶点, 2个2度顶点, 其余顶 点全是树叶. 试求树叶数, 并画出满足要求的非同构的无 向树.
例3 图中红边为一棵生成树, 对应它的基本回路系统为 {bce, fae, gaed}
15
基本回路与基本回路系统
• 求基本回路
设弦e=(u,v),先求T中u到v的路径(u,v),再并
上弦e,即得对应e的基本回路。
例3 图中红边为一棵生成树, 对应它的基本回路系统为 {bce, fae, gaed}
16
基本割集与基本割集系统
定义16.4 设T是n阶连通图G的一棵生成树, e1, e2, …, en1为T的树枝,Si是G的只含树枝ei, 其 他边都是弦的割集, 称Si为对应树枝ei的基本割集. 称{S1, S2, …, Sn1}为对应T的基本割集系统, (G)=n1为G的割集秩
例4 图中红边为一棵生成树, 对应它的基本割集系统为
生成树T的余树 T : 所有弦的集合的导出子图 注意:T 不一定连通, 也不一定不含回路.
黑边构成生成树 红边构成余树
12
生成树的存在性
定理9.3 无向图G有生成树当且仅当G是连通图; 任何无向连通图都有生成树.
证: 用破圈法. 若图中无圈, 则图本身就是自己的生成树. 否则删去圈上的任一条边, 不破坏连通性, 重复进行直到 无圈为止, 得到图的一棵生成树. 推论1 设n阶无向连通图有m条边, 则mn1. (同定理 7.9) 推论2 设n阶无向连通图有m条边, 则它的生成树的余树 有mn+1条边.
解 设有x片树叶, 2(2+x)=13+22+x 解得x=3, 故T有3片树叶. T的度数列为1, 1, 1, 2, 2, 3
9
实例
例2 画出所有6阶非同构的无向树
解 m=5条边, 总度数等于10
可能的度数列:
(1) 1,1,1,1,1,5
(2) 1,1,1,1,2,4
(3) 1,1,1,1,3,3
(12)(3) 显然连通, 只需证m=n1. 对n作归纳证明. 当n=1时, 显然m=0, 结论成立. 假设当nk(k1)时结论成立, 考虑n=k+1. 任取一条边e=(u,v), 它 是u,v之间惟一的通路, 删去e, G被分成2个连通分支, 设它们分别 有m(32)n=1n, 2(n-121)个,连得顶通m点性=和显mm然1+1,,mm只2+2条1需=边证n,-无1n.回1k路, 。n2假k设. 由G归存纳在假回设路,,m任1=取n1一-1个, 回路, 删去回路中的一条边, 所得图仍是连通的. 重复这个做法, 直 到没有回路为止, 得到一棵树, 它有n个顶点m-r条边, r>0. 由 1)(2)(3), 得m-r =n-1, 矛盾.
5
定理的证明(续)
(3) G是连通的且m=n1; (4) G中无回路且m=n1; (123)(4) 略 (4)(123) 只需证G连通. 假设G不连通, 有p(p>1)个连通分 支.设第k个连通分支有nk个顶点和mk条边, 由(123),mk= nk-1. 得到m= n-p, 与m=n-1矛盾.
6
13
定理
定理9.4 设T为无向连通图G中一棵生成树,e 为T的任意一条弦,则T∪e中含G中只含一 条弦其余边均为树枝的圈,而且不同的弦对 应的圈也不同。
14
基本回路与基本回路系统
定义16.3 设G是n阶m条边的无向连通图, T是G的一 棵生成树, e1, e2, … , emn+1为T的弦. G中仅含T的一 条弦er的圈Cr称作对应弦er的基本回路. 称{C1,C2, …, Cmn+1}为对应T的基本回路系统。 (G)=mn+1为G的圈秩。
若ek与T 中的边不构成回路, 则将ek加入T 中
19
最小生成树
Prim算法:从单一顶点开始,普里姆算法按照以下步骤逐步扩大树中所含
顶点的数目,直到遍及连通图的所有顶点。 输入:一个加权连通图,其中顶点集合为V,边集合为E; 初始化:Vnew = {x},其中x为集合V中的任一节点(起始点),Enew = {}; 重复下列操作,直到Vnew = V) 1,1,1,2,2,3
(5) 1,1,2,2,2,2
(4a)
(4b)
(5)
10
生成树
• 生成树与基本回路和基本割集 • 最小生成树
11
生成树
P146定义9.2 设G为无向连通图 G的生成树: G的生成子图(定义7.11)并且是树 生成树T的树枝: G在T中的边 生成树T的弦: G不在T中的边
实例
例5 求图的一棵最小生成树
避圈法
W(T)=38
21
实例
例5 求图的一棵最小生成树
Prim算法
W(T)=38
22
作业
第九章:3,6,8,10,11
第9章 树
• 无向树及其性质 • 生成树
1
无向树及其性质
• 无向树 • 无向树的性质
2
无向树的定义
无向树: 连通无回路的无向图 平凡树: 平凡图 森林: 每个连通分支都是树的非连通的无向图 树叶: 树中度数为1的顶点 分支点: 树中度数2的顶点
例如
(a)
(b)
3
无向树的性质
定理9.1 设G=<V,E>是n阶m条边的无向图, 下面 各命题是等价的: (1) G是树(连通无回路); (2) G中任意两个顶点之间存在惟一的路径; (4) G中无回路且m=n1; (3) G是连通的且m=n1; (6) G是连通的且G中任意一条边均为桥. (5) G中无回路, 但在任何两个不相邻的顶点之间 加一条边所得图中有惟一的一条初级回路.
在集合E中选取权值最小的边(u, v),其中u为集合Vnew中的元素, 而v则是V中没有加入Vnew的顶点(如果存在有多条满足前述条件即具 有相同权值的边,则可任意选取其中之一);
将v加入集合Vnew中,将(u, v)加入集合Enew中; 输出:使用集合Vnew和Enew来描述所得到的最小生成树。
{{a,f,g}, {e,b,f,g}, {c,b}, {d,g} }
17
基本割集与基本割集系统
• 求基本割集 设e为生成树T的树枝,Te为两棵小树T1与 T2,令Se ={e|eE(G)且e的两个端点分别属于 T1与T2},则Se为e对应的基本割集。
例4 图中红边为一棵生成树, 对应它的基本割集系统为 {{a,f,g}, {e,b,f,g}, {c,b}, {d,g} }
定理的证明(续)
(5) G中无回路, 但在任何两个不相邻的顶点之间加一条 边所得图中有惟一的一条初级回路. (6) G是连通的且G中任意一条边均为桥
(1)(5) 由(2), 任意2个不相邻的顶点之间有一条惟 一的路径, 故在这2个顶点之间添加一条新边, 必得到一条 惟一的初级回路.
(1)(6) 删除任一边均有m=n-2,非联通图,G中任意一 条边均为桥.
最小生成树
图G的每一条边e附加一个实数w(e), 称作边e的权. 图G连 同附加在边上的权称作带权图, 记作G=<V,E,W>. 设H是 G的子图, H所有边的权的和称作H的权, 记作W(H). 最小生成树: 带权图权最小的生成树
避圈法 (Kruskal) (1) 将所有非环边按权从小到大排列, 设为e1, e2, …, em (2) 令T = (3) For k=1 to m Do
4
定理的证明
(1) G是树(连通无回路) (2)任两个顶点之间存在惟一的路径
(1)(2) 由连通性可知, 任意2个顶点之间有一条路径. 又, 假设某2 个顶点之间有2条路径, 则这2条路径可组合成一条回路, 与树的定 义矛盾. (2)(1) 连通性显然,无回路用反证法。
(3) G是连通的且m=n1;
(6)(1) G中无回路, 否则删去回路上任意条边, G仍连通.
7
无向树的性质(续)
定理9.2 非平凡的无向树至少有两片树叶 证 设有n(n>1)个顶点, x片树叶, 由握手定理和前定 理, 有
2(n 1) d(vi ) x 2(n x)
解得 x2.
8
实例
例1 已知无向树T中, 有1个3度顶点, 2个2度顶点, 其余顶 点全是树叶. 试求树叶数, 并画出满足要求的非同构的无 向树.
例3 图中红边为一棵生成树, 对应它的基本回路系统为 {bce, fae, gaed}
15
基本回路与基本回路系统
• 求基本回路
设弦e=(u,v),先求T中u到v的路径(u,v),再并
上弦e,即得对应e的基本回路。
例3 图中红边为一棵生成树, 对应它的基本回路系统为 {bce, fae, gaed}
16
基本割集与基本割集系统
定义16.4 设T是n阶连通图G的一棵生成树, e1, e2, …, en1为T的树枝,Si是G的只含树枝ei, 其 他边都是弦的割集, 称Si为对应树枝ei的基本割集. 称{S1, S2, …, Sn1}为对应T的基本割集系统, (G)=n1为G的割集秩
例4 图中红边为一棵生成树, 对应它的基本割集系统为
生成树T的余树 T : 所有弦的集合的导出子图 注意:T 不一定连通, 也不一定不含回路.
黑边构成生成树 红边构成余树
12
生成树的存在性
定理9.3 无向图G有生成树当且仅当G是连通图; 任何无向连通图都有生成树.
证: 用破圈法. 若图中无圈, 则图本身就是自己的生成树. 否则删去圈上的任一条边, 不破坏连通性, 重复进行直到 无圈为止, 得到图的一棵生成树. 推论1 设n阶无向连通图有m条边, 则mn1. (同定理 7.9) 推论2 设n阶无向连通图有m条边, 则它的生成树的余树 有mn+1条边.
解 设有x片树叶, 2(2+x)=13+22+x 解得x=3, 故T有3片树叶. T的度数列为1, 1, 1, 2, 2, 3
9
实例
例2 画出所有6阶非同构的无向树
解 m=5条边, 总度数等于10
可能的度数列:
(1) 1,1,1,1,1,5
(2) 1,1,1,1,2,4
(3) 1,1,1,1,3,3
(12)(3) 显然连通, 只需证m=n1. 对n作归纳证明. 当n=1时, 显然m=0, 结论成立. 假设当nk(k1)时结论成立, 考虑n=k+1. 任取一条边e=(u,v), 它 是u,v之间惟一的通路, 删去e, G被分成2个连通分支, 设它们分别 有m(32)n=1n, 2(n-121)个,连得顶通m点性=和显mm然1+1,,mm只2+2条1需=边证n,-无1n.回1k路, 。n2假k设. 由G归存纳在假回设路,,m任1=取n1一-1个, 回路, 删去回路中的一条边, 所得图仍是连通的. 重复这个做法, 直 到没有回路为止, 得到一棵树, 它有n个顶点m-r条边, r>0. 由 1)(2)(3), 得m-r =n-1, 矛盾.
5
定理的证明(续)
(3) G是连通的且m=n1; (4) G中无回路且m=n1; (123)(4) 略 (4)(123) 只需证G连通. 假设G不连通, 有p(p>1)个连通分 支.设第k个连通分支有nk个顶点和mk条边, 由(123),mk= nk-1. 得到m= n-p, 与m=n-1矛盾.
6
13
定理
定理9.4 设T为无向连通图G中一棵生成树,e 为T的任意一条弦,则T∪e中含G中只含一 条弦其余边均为树枝的圈,而且不同的弦对 应的圈也不同。
14
基本回路与基本回路系统
定义16.3 设G是n阶m条边的无向连通图, T是G的一 棵生成树, e1, e2, … , emn+1为T的弦. G中仅含T的一 条弦er的圈Cr称作对应弦er的基本回路. 称{C1,C2, …, Cmn+1}为对应T的基本回路系统。 (G)=mn+1为G的圈秩。
若ek与T 中的边不构成回路, 则将ek加入T 中
19
最小生成树
Prim算法:从单一顶点开始,普里姆算法按照以下步骤逐步扩大树中所含
顶点的数目,直到遍及连通图的所有顶点。 输入:一个加权连通图,其中顶点集合为V,边集合为E; 初始化:Vnew = {x},其中x为集合V中的任一节点(起始点),Enew = {}; 重复下列操作,直到Vnew = V) 1,1,1,2,2,3
(5) 1,1,2,2,2,2
(4a)
(4b)
(5)
10
生成树
• 生成树与基本回路和基本割集 • 最小生成树
11
生成树
P146定义9.2 设G为无向连通图 G的生成树: G的生成子图(定义7.11)并且是树 生成树T的树枝: G在T中的边 生成树T的弦: G不在T中的边