版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1,第十六章 树,主要内容 无向树及其性质 生成树 根树及其应用,2,16.1 无向树及其性质,定义16.1 (1) 无向树连通无回路的无向图 (2) 平凡树平凡图 (3) 森林至少由两个连通分支(每个都是树)组成的无向图 (4) 树叶1度顶点 (5) 分支点度数2的顶点,3,无向树的等价定义,定理16.1 设G=是n阶m条边的无向图,则下面各命题 是等价的: (1) G 是树 (2) G 中任意两个顶点之间存在惟一的路径. (3) G 中无回路且 m=n1. (4) G 是连通的且 m=n1. (5) G 是连通的且 G 中任何边均为桥. (6) G 中没有回路,但在任何两个不同的顶点之间加
2、一条新边,在所得图中得到惟一的一个含新边的圈.,4,由上式解出x 2.,定理16.2 设T是n阶非平凡的无向树,则T 中至少有两片树叶.,无向树的性质,证 设 T 有 x 片树叶,由握手定理及定理16.1可知,,5,例题,例1 已知无向树T中有1个3度顶点,2个2度顶点,其余顶点 全是树叶,试求树叶数.,解 解本题用树的性质m=n1,握手定理. 设有x片树叶,于是 n = 1+2+x = 3+x, 2m = 2(n1) = 2(2+x) = 13+22+x 解出x = 3,故T有3片树叶.,6,例2 已知无向树T有5片树叶,2度与3度顶点各1个,其余顶 点的度数均为4,求T的阶数n,例题,解
3、设T的阶数为n, 则边数为n1,4度顶点的个数为n7. 由握手定理得 2m = 2(n1) = 51+21+31+4(n7) 解出n = 8,4度顶点为1个.,7,子图,定义14.8 G=, G= (1) GG G为G的子图,G为G的母图 (2) 若GG且V=V,则称G为G的生成子图 (3) 若VV或EE,称G为G的真子图 (4) V(VV且V)的导出子图,记作GV (5) E(EE且E)的导出子图,记作GE 在图中,设G为(1)中图所表示,取V1=a,b,c,则V1的导出子图GV1为(2)中图所示。取E1=e1,e3,则E1的导出子图GE1为(3)中图所示。,8,不一定连通,也不一定不含回路
4、,如图所示,定义16.2 设G为无向图 (1) G的树T 是G 的子图并且T是树 (2) G的生成树T 是G 的生成子图并且T是树 (3) 生成树T的树枝G 的在T 中的边 (4) 生成树T的弦G 的不在T 中的边 (5) 生成树T的余树 T的所有弦的导出子图,16.2 生成树,9,推论2 的边数为mn+1.,推论3 为G的生成树T的余树,C为G中任意一个圈,则C与 一定有公共边. 证 否则,C中的边全在T中,这与T为树矛盾.,定理16.3 无向图G具有生成树当且仅当G连通.,生成树存在条件,推论1 G为n阶m条边的无向连通图,则mn1.,证 必要性显然. 充分性用破圈法(注意:在圈上删除任何
5、一条边,不破坏连通性),由定理16.3和树的边数等于顶点数减1可立即得到下述推论。,10,基本回路系统,定理16.4 设T为G的生成树,e为T的任意一条弦,则Te中 含一个只有一条弦其余边均为T的树枝的圈. 不同的弦对应的 圈也不同. 证 设e=(u,v),在T中u到v有惟一路径,则e为所求的圈.,定义16.3 设T是n阶m条边的无向连通图G的一棵生成树,设 e1, e2, , emn+1为T 的弦. 设Cr为T 添加弦er 产生的只含弦 er、其余边均为树枝的圈. 称Cr为G的对应树T 的弦er的基本 回路或基本圈,r=1, 2, , mn+1. 并称C1, C2, ,Cmn+1为 G对应T
6、 的基本回路系统,称mn+1为G的圈秩,记作 (G).,求基本回路的算法:设弦e=(u,v),先求T中u到v的路径uv,再并上弦e,即得对应e的基本回路.,11,Ca=aef,Cb=bde,Cc=cdf,此图的圈秩为3,基本回路系统为:Ca, Cb, Cc,基本回路系统,在下图中,对应生成树的弦a,b,c的基本回路为:,12,基本割集的存在,定理16.5 设T是连通图G的一棵生成树,e为T的树枝,则G 中存在只含树枝e,其余边都是弦的割集,且不同的树枝对 应的割集也不同. 证 由定理16.1可知,e是T的桥,因而Te有两个连通分支T1 和T2,令 Se=e | eE(G)且 e 的两个端点分别
7、属于V(T1)和V(T2), 由构造显然可知Se为G的割集,eSe且Se中除e外都是弦, 所以Se为所求. 显然不同的树枝对应的割集不同.,13,定义16.4 设T是n阶连通图G的一棵生成树,e1, e2, , en1 为T 的树枝,Si是G的只含树枝ei的割集,则称Si为G的对应 于生成树T由树枝ei生成的基本割集,i=1, 2, , n1. 并称 S1,S2, , Sn1为G 对应T 的基本割集系统,称n1为G的割 集秩,记作(G).,基本割集与基本割集系统,求基本割集的算法 设e为生成树T 的树枝,Te为两棵小树T1与T2,令 Se =e | eE(G)且e的两个端点分别属于T1与T2
8、则Se为e 对应的基本割集.,14,Sa=a,f,g,Sb=b,g,h,Sd=d,h,i,Sc=c,f,h,Se=e,f,i,基本割集系统为:Sa , Sb , Sc , Sd , Se 割集秩为5.,基本割集与基本割集系统,在下图中,对应树枝a,b,c,d,e的基本割集分别为:,15,解 弦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,
9、Sc, Sd.,例 下图实线边所示为生成树,求基本回路系统与基本割集系统,实例,16,最小生成树,定义16.5 T是无向连通带权图G=的生成树 (1) T的权W(T)T的各边权之和 (2) G的最小生成树G的所有生成树中权最小的生成树,求最小生成树的一个算法 避圈法(Kruskal)设G=,将G中非环边按权从小 到大排序:e1, e2, , em. (1) 取e1在T中 (2) 查e2,若e2与e1不构成回路,取e2也在T 中,否则弃去e2. (3) 再查e3, 直到得到生成树为止.,17,例4 求图的一棵最小生成树.,所求最小生成树如 图所示,W(T)=38.,实例,18,16.3 根树及其
10、应用,定义16.6 有向树T 基图为无向树的有向图。 (1) T 为根树T 中一个顶点入度为0,其余顶点入度均为1的有向树. (2) 树根入度为0的顶点 (3) 树叶入度为1,出度为0的顶点 (4) 内点入度为1,出度不为0的顶点 (5) 分支点树根与内点的总称 (6) 顶点v的层数从树根到任意顶点v的路径的长度(即路径中的边数) (7) 树高T 中所有顶点的最大层数 (8) 平凡根树平凡图,19,根树的画法:树根放上方,省去所有有向边上的箭头 如右图所示 a是树根 b,e,f,h,i是树叶 c,d,g是内点 a,c,d,g是分支点 a为0层;1层有b,c; 2层有d,e,f; 3层有g,h;
11、 4层有i. 树高为4,根树实例,20,家族树与根子树,定义16.7 设T 为一颗非平凡的根树 (1) 祖先与后代vi ,vj V(T), vi vj ,若vi 可达vj ,则称vi 为vj的祖先 , vj为vi的后代 。 (2) 父亲与儿子vi ,vj V(T), vi vj ,若vi 邻接到vj(即 E(T) ) ,则称vi 为vj的父亲 , vj为vi的儿子 。 (3) 兄弟vj ,vkV(T), vj vk ,若vj ,vk的父亲相同 ,则称vj与vk是兄弟 。 定义16.8 设v为根树T中的任意一个顶点,称v及其后代的导出子 图Tv为T的以v为根的根子树.,常将根树看成家族树,家族中
12、成员之间的关系由下面的定义给出:,21,根树的分类,(1) T 为有序根树同层上的顶点都标定次序的根树 (2) 根据根树T中的每个分支点儿子数以及是否有序,可以将根树分为下列各类: r 叉树每个分支点至多有r 个儿子 r 叉有序树r叉树是有序的 r 叉正则树每个分支点恰有r 个儿子 r 叉正则有序树又若r 叉正则树是有序的 r 叉完全正则树树叶层数相同的r叉正则树 r 叉完全正则有序树又若r 叉完全正则树是有序的,2叉正则有序树的每个分支点的两个儿子导出的根子树分别称为该分支点的左子树和右子树。 在所有的r叉树中,最常用的是2叉树。下面介绍2叉树的应用。,22,定义16.9 设2叉树T 有t片
13、树叶v1, v2, , vt,权分别为w1, w2, , wt,称 为T 的权,其中l(vi)是vi 的层数. 在所有有t片树叶,带权w1, w2, , wt 的2叉树中,权最小的2叉树称为最优2叉树.,最优二叉树,求最优2叉树的算法 Huffman算法 给定实数w1, w2, , wt ,且w1w2wt . (1)作t片树叶, 分别以w1, w2, , wt为权. (2)在所有入度为0的顶点(不一定是树叶)中选出两个权最小的顶点, 添加一个新分支点, 以这2个顶点为儿子, 其权等于这2个儿子的权之和. (3)重复(2), 直到只有1个入度为0 的顶点为止. W(T)等于所有分支点的权之和,2
14、3,例 5 求带权为1, 1, 2, 3, 4, 5的最优树. 解题过程由下图给出,W(T)=38,最优二叉树的算法Huffman算法,24,最佳前缀码,定义16.10 设12n-1n是长度为 n 的符号串 (1) 前缀该符号串的子串 1, 12, , 12n1 (2) 前缀码符号串集合A=1, 2, , m中的任意两个符号串都互不为前缀 (3) 二元前缀码i (i=1, 2, , m) 中只出现两个符号,如0与1.,如何产生二元前缀码? 定理16.6 一棵2叉树产生一个二元前缀码. 推论 一棵正则2叉树产生惟一的一个二元前缀码(按左子树标0,右子树标1),25,一棵2元树产生一个二元前缀码:
15、 对每个分支点, 若关联2条边, 则给左边标0, 右边标1; 若只关联1条边, 则可以给它标0(看作左边), 也可以 标1(看作右边). 将从树根到每一片树叶的通路上标 的数字组成的字符串记在树叶处, 所得的字符串 构成一个前缀码,如右图所示:,树的编码:,最优2进制编码:使信息传递的2进制数最短 由最优2叉树产生的前缀码为最佳前缀码。 用最佳前缀码传输的二进制位数最省。,最佳前缀码,26,图所示二叉树产生的前缀码为 00, 10, 11, 011, 0100, 0101 ,二叉树产生的前缀码,27,用Huffman算法产生最佳前缀码,例16.7 在通信中,八进制数字出现的频率如下: 0:25
16、% 1:20% 2:15% 3:10% 4:10% 5:10% 6:5% 7:5% 求传输它们的最佳前缀码,并求传输10n(n2)个按上述比 例出现的八进制数字需要多少个二进制数字?若用等长的 (长为3)的码字传输需要多少个二进制数字?,28,解 用100个八进制数字中各数字出现的个数,即以100乘各频率为权,并将各权由小到大排列,得w1=5, w2=5, w3=10, w4=10, w5=10, w6=15, w7=20, w8=25。用Huffman算法求以频率(乘以100)为权的最优2叉树。用此权产生的最优2叉树如下图所示:,求最佳前缀码,传100个按比例出现的八进制数字所需二进制数字的
17、个数为 W(T)=285,传10n(n2)个按比例出现的八进制数字需要2.8510n个二进制数字,用等长码(长为3)传输需310n个二进制数字.,01-0 11-1 001-2 100-3 101-4 0001-5 00000-6 00001-7,它产生的最优前缀码,29,波兰符号法与逆波兰符号法,行遍或周游根树T对根树T的每个顶点访问且仅访问一次. 对于2叉有序正则树有以下三种周游方式: 中序行遍法访问的次序为:左子树、根、右子树 前序行遍法访问的次序为:根、左子树、右子树 后序行遍法访问的次序为:左子树、右子树、根,对如右图所示的根树T(2叉有序正则树)按中序、前序、后序行遍的周游结果分别
18、为: b a (f d g) c e, a b (c (d f g) e), b (f g d) e c) a,30,用2叉有序正则树存放算式,存放规则 最高层次运算放在树根 然后依次将运算符放在根子树的根上 数放在树叶上 规定:被除数、被减数放在左子树树叶上,算式(b+(c+d)a)(ef)(g+h)(ij)存放在如上图所示的2叉有序正则树上.,31,波兰符号法,波兰符号法 按前序行遍法访问存放算式的2叉有序正则树,其结果不加括号, 规定从右到左每个运算符对它后面紧邻的两个数进行运算。在这 种算法中,由于运算符在它的两个运算对象之前,所以称此种算 法为前缀符号法或波兰符号法. 对下图的访问结
19、果为 b + c d a e f + g h i j 逆波兰符号法 按后序行遍法访问存放算式的2叉有序正则树,其结果不加括号, 规定从左到右每个运算符对它前面紧邻的两个数进行运算。在这 种算法中,由于运算符在它的两个运算对象之后,所以称此种算 法为后缀符号法或逆波兰符号法. 对上图的访问结果为 b c d + + a e f g h + i j ,32,重点,主要内容 无向树及其性质 生成树、最小生成树、基本回路系统、基本割集系统 根树及其分类、最优树、二叉树产生的前缀码、最佳前缀码、波兰符号法、逆波兰符号法 基本要求 深刻理解无向树的定义及性质 熟练地求解无向树 准确地求出给定带权连通图的最
20、小生成树 深刻理解基本回路、基本割集的概念,并会计算 理解根树及其分类等概念 熟练掌握求最优树及最佳前缀码的方法 掌握波兰符号法与逆波兰符号法,33,第十六章 习题课,主要内容 无向树及其性质 生成树、最小生成树、基本回路系统、基本割集系统 根树及其分类、最优树、最佳前缀码、波兰符号法、逆波兰符号法 基本要求 深刻理解无向树的定义及性质 熟练地求解无向树 准确地求出给定带权连通图的最小生成树 深刻理解基本回路、基本割集的概念,并会计算 理解根树及其分类等概念 会画n阶(n较小)非同构的无向树及根树(1n6) 熟练掌握求最优树及最佳前缀码的方法 掌握波兰符号法与逆波兰符号法,34,(2),(3),从而解出,练习1,1. 无向树 T 有ni个i 度顶点,i=2, 3, ,k,其余顶点全是树叶,求T 的树叶数.,解 用树的性质:边数 m=n1(n为阶数),及握手定理. (1),35,2设n阶非平凡的无向树T中,(T) k,k 1. 证明T至少 有k片树叶.,证 反证法. 否则,T至多有s片树叶,s k,下面利用握手定理及树的 性质m = n1推出矛盾. 由于(T) k,故存在v0,d(v0) k. 于是,,由此解出s k,这与s k矛盾. 证本题的方法有多种,请用分支点都是割点来证明.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026湖南长沙市雨花区中雅培粹双语中学合同制教师招聘备考题库附答案
- 2026福建厦门市集美区上塘中学产假顶岗教师招聘2人备考题库附答案
- 2026福建福州左海众凯科技有限责任公司招聘2人参考题库附答案
- 2026贵州普安县赴省内外高校引进高层次人才和急需紧缺人才16人实施参考题库附答案
- 2026鄂尔多斯伊金霍洛旗公立医院招聘90名专业技术人员备考题库附答案
- 2026陕西交通控股集团有限公司校园招聘考试备考题库附答案
- 2026陕西西安市灞桥区空军工程大学基础部科研助理招聘1人参考题库附答案
- 中交集团纪委第一办案中心社会招聘5人参考题库附答案
- 乐山市卫生健康委员会2025年下半年公开选调事业单位工作人员备考题库附答案
- 南充市人力资源和社会保障局关于市属事业单位2025年下半年公开选调工作人员考试备考题库附答案
- 管网安全生产管理制度
- (16)普通高中体育与健康课程标准日常修订版(2017年版2025年修订)
- 成都信息工程大学
- GB/T 5568-2022橡胶或塑料软管及软管组合件无曲挠液压脉冲试验
- 细菌内毒素工作标准品效价标定方法研究
- 心房扑动分类与治疗课件
- YS/T 1077-2015眼镜架用TB13钛合金棒丝材
- GB/T 15383-2011气瓶阀出气口连接型式和尺寸
- 《全国普通高等学校毕业生就业协议书》违约申请书
- 反腐倡廉主题教育国际反腐日PPT课件(带内容)
- 眼各部检查和眼科常用检查法课件
评论
0/150
提交评论