离散数学第四版课后答案(第9章).docx
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第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.8
9. 5非同构的无向树共有2棵,如图9. 9所示.
困9.9
分析由度数列1, 1, 1, 1,2,2, 4不难看出,唯一的4度顶点
必须与2度顶点相邻,它与1个2度顶点相邻,还是与两个2度顶点都相邻,所得树是非同构的,再没有其他情况. 因而
是两棵非同构的树. o 、O O
9.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。
为树枝e对应的基本割集.显然e&S e,S e中另外的边全是弦.注意,两棵小树£和笃,中很可能有平凡的树(一个顶点).
厂《zzA 亠
T-a得两棵小树如图9. 11中(1)所不.G中一个端点在7;中,另一个端点在笃中的边为a (树枝),e,c,g,h,它们全是弦, 于是S“ = {a,e,c,g,h}
T-b得两棵小树如图9. 11中(2)所示,其中有一棵为平凡树.G屮一个端点在7;屮,另…个端点在妇屮的边数除树枝b外,还有弦c,/?,所以,S h=[b,c,h}
T-d产生的两棵小树如图9. 11中(3)所示• G屮一个端点在7;中,另中一个端点在丁2中的边,除树枝d外,还有两条弦c,e ,所不,S d = {d,c,e}
产生的两棵小树如图9. 11中⑷ 所示.由它产生的基本割集为Sf = {f,g,h}
9. 8按Kruskal求最小生成树的算法,求出的图9. 3 (1)的最小生成树T为图9. 12中(1)所示,其W(T)=7. (2)的最小生成树T为图9. 12中(2)所示,其w(T)= II.
9. 9 5P B2,B4为前缀码.
分析在B課2且中任何符号串都不是另外符号串的前串,
因而它们都是前缀码.而在场中,1是11, 101的前缀,因而场
不是前缀码.在禺中,a,是aa,ac等的前缀,因而B.,也不是前缀码.
(1) 1 (2)
9. 10由图9. 4 (1)给出的2元前缀码.
={00,0100,01010,011,11}
由(2)给出的3元前缀码为.
B2 = {00,01,0200,0201,0202,022,1,2}.
分析耳是2元树产生的2元前缀码(因为码屮的符号串由两个符号0,1组成),类似地,场是由3元树产牛的3元前缀码(因为码中符号串由3个符号0, 1,2组成).一般地,由,•元树产生「元前缀码.
9. 11 (1)算式的表达式为
(((a + (b *c)*d _ w)三(/ + g) + (b *i) * j .
由于*,十优先于因而可以省去一些括号使其成为
((a + b * c) * d — w)十(/ + g) + 力 * j * j .
(2)算式的波兰符号法表达式为
+ 一一 * + a * bcde + fg *hij.
(3)算式的逆波兰符号法表达式为
abc * +d * £ - 虑 + 十hi * jl * +.
9. 12答案A:①;B②;C:④;D:⑨.
分析对于每种情况都先求出非同构的无向树,然后求出每棵非同构的无向树派生出来的所有非同构的根树.图9. 13中,(1), (2), (3), (4)分别画出了2阶,3阶,4阶,5阶所有非同构的无向树,分别为1棵,1棵,2棵和3棵无向树.
(1) (2) (4)
(3)
2阶无向树只有1棵,它有两个1度顶点,见图9. 13中(1)所示,以1个顶点为树根,1个顶点为树叶,得到1棵根树.
3阶非同的无向树也只有1棵,见图9. 13中⑵所示.它有两个1度顶点,1个2度顶点,以1度顶点为根的根树与以2度顶点为根的树显然是非同构的根树,所以2个阶非同构的根树有两棵.
4阶非同构的无向树有两棵,见图9. 13中(3)所示.第一棵树有3片树叶,1个3度顶点,以树叶为根的根树与以3度顶点为根的树非同构•所以,由第一棵树能牛成两个非同构的根树,见图9. 14中(1)所示.第二棵树有两片树叶,两个2度顶点,由对称性,以树叶为根的根树与2度顶点为根的根树非同构,见图9. 14中(2)所示.所以,4阶非同构的根树有4棵.
困9.14
5阶非同构的无向树有3棵,见图9. 13中⑷所示.由第 一棵能派生两棵非同构的根树,由第二棵能派生4棵非同构 的根树,由第三棵能派牛3棵非同构的根树,所以,5阶非同构 的根树共有9棵,请读者将它们都画出來.
9. 13答案A:②;B:②;C:③;D:③;E:③;F:④;G:④; H:③.
分析将所有频率都乘100,所得结果按从小到大顺序 排列:
Wg = 5,w f = 5,w e = 10,叫=1°,叫=15, w h = 20, w a = 35. 各数为权,用 算法求一棵最优
9. 15所示. 对照各个权可知各字母的前缀码如下:
a ——10,
b ——01,
c ——111,
d ——110,
e ——001,
f ——0001,
g ——0000.
于是,a, b 的码长为2,c,d,e 的码长为3,f,g 的码长为4. 以以上
Huffman
树,见图 ffi 9.15
W(T)=255(各分支点的权之和),W(T)是传输100按给定
频率出现的字母所用的二进制数字,因则传输10"个按上述频率出现的字母要用2.55X104 =25500个二进制数字.
最后还应指出一点,在画最优树叶,由于顶点位置的不同,所得缀码可能不同,即有些字母的码子在不同的最优树
中可能不同,但一般说来码长不改变•特别是,不同的最优树, 它们的权是固定不变的.
9. 14答案A:②;④
分析用2元有序正则树表示算式,树叶表示参加运算的数,分支点上放运算符,并将被减数(被除数)放在左子树上,所得2元树如图9. 16所示.
用前序行遍法访问此树,得波兰符
号表示法为
—** +abc + de- f gh.
用后序行遍法访问此树,得逆波兰
符号表示法为
ab + de + * ——。