第六章树和二叉树-作业2-树和森林

判断题
1-1
对于一个有N个结点、K条边的森林,不能确定它共有几棵树。F

能确定,且共有N-K棵树

选择题

2-1
具有1102个结点的完全二叉树一定有_B_个叶子结点
A.79
B.551
C.1063
D.不确定

设n2为度为2的节点,n1为度为1的节点,n0为度为0的节点;
边数n=节点数-1,即n=1101;
n=2n2+n1;
完全二叉树度为1的节点只能有0个或1个(不信可以画画看一下)
所以n1=0或者1用n=2n2+n1;算一下,n2肯定是整数,把0舍去;
求出n2=550;
度为0的节点数等于度为2的节点数+1;
所以叶子节点数为551

2-2
若森林F有15条边、25个结点,则F包含树的个数是C
A.8
B.9
C.10
D.11

每多一棵树,结点数就少一个
n棵树时,边数 = 结点数-n
15条边全是一棵树的,那么这棵树有16个结点,剩下9个结点都不再形成边,即一个结点算一棵树。那么,共1+9 = 10棵树。

2-3
将森林转换为对应的二叉树,若在二叉树中,结点u是结点v的父结点的父结点,则在原来的森林中,u和v可能具有的关系是: B
1.父子关系; 2. 兄弟关系; 3. u的父结点与v的父结点是兄弟关系
A.只有2
B.1和2
C.1和3
D.1、2和3

1对,因为这个树不一定是二叉树,有多个叉时,左孩子,右兄弟,3,可以画个图试试,试不出来

2-4
对于一个有N个结点、K条边的森林,共有几棵树? A
A.N−K
B.N−K+1
C.N−K−1
D.不能确定

n棵树时,边数 = 结点数-n

2-5
设森林F中有三棵树,第一、第二、第三棵树的结点个数分别为M​1,M2和M3。则与森林F对应的二叉树根结点的右子树上的结点个数是:C
A.M​1
B.M1+M2
​​​C.M2+M3
D.M3

2-6
由若干个二叉树组成的森林F中,叶结点总个数为N,度为2的结点总个数为M,则该集合中二叉树的个数为: C
A.M−N
B.N−M
C.N−M−1
D.无法确定

设 N N1 N2
TNum = NodeNum - EdgeNum
= N0 + N1 + N2 - (N2 * 2 + N1)
= N0 - N2
= N - M;

2-7
已知一棵完全二叉树的第6层(设根为第1层)有8个叶结点,则该完全二叉树的结点个数最多是: C
A.39
B.52
C.111
D.119

即第六层有32个节点,其中有8个是叶子节点,说明其余24个是有子节点的,又由于是完全二叉树,所以那24个节点每个节点有2个子节点,共计48个节点,也就是第七层的节点有48个,所以前六层的63加第七层的48就是111个节点了

2-8
在一个用数组表示的完全二叉树中,如果根结点下标为1,那么下标为17和19这两个结点的最近公共祖先结点在哪里(数组下标)? (注:两个结点的“公共祖先结点”是指同时都是这两个结点祖先的结点) B
A.8
B.4
C.2
D.1

处于 i 处结点的父节点一定为 [i / 2] (小于 i / 2的最大整数) 的结点 , 因此17, 19不断除以二,直至相等。
①17 / 2 = 8, 19 / 2 = 8;
②8 / 2 = 4, 8 / 2 = 4。

2-9
具有65个结点的完全二叉树其深度为(根的深度为1): B
A.8
B.7
C.6
D.5

A如果是8,假设前7层都是满二叉树,则结点数为2^7-1=127,不符合条件
B如果是7,假设前6层都是满二叉树,则结点数为2^6-1=63,然后第7层有两个结点,符合要求。
C和D不符合现实,前6层满二叉树才是63个结点,故C,D不对

  • 10
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 一棵二叉树的顺序存储情况如下: 度为2的结点数为( )。 A.1 B.2 C.3 D.4 2. 一棵“完全二叉树结点数为25,高度为( )。 A.4 B.5 C.6 D.不确定 3.下列说法,( )是正确的。 A. 二叉树就是度为2的 B. 二叉树不存在度大于2的结点 C. 二叉树是有序 D. 二叉树每个结点的度均为2 4.一棵二叉树的前序遍历序列为ABCDEFG,它的序遍历序列可能是( )。 A. CABDEFG B. BCDAEFG C. DACEFBG D. ADBCFEG 5.线索二叉树的线索指的是( )。 A.左孩子 B.遍历 C.指针 D.标志 6. 建立线索二叉树的目的是( )。 A. 方便查找某结点的前驱或后继 B. 方便二叉树的插入与删除 C. 方便查找某结点的双亲 D. 使二叉树的遍历结果唯一 7. 有abc三个结点的右单枝二叉树的顺序存储结构应该用( )示意。 A. a b c B. a b ^ c C. a b ^ ^ c D. a ^ b ^ ^ ^ c 8. 一颗有2046个结点的完全二叉树的第10层上共有( )个结点。 A. 511 B. 512 C. 1023 D. 1024 9. 一棵完全二叉树一定是一棵( )。 A. 平衡二叉树 B. 二叉排序 C. 堆 D. 哈夫曼 10.某二叉树序遍历序列和后序遍历序列正好相反,则该二叉树一定是( )的二叉树。 A.空或只有一个结点 B.高度等于其结点数 C.任一结点无左孩子 D.任一结点无右孩子 11.一棵二叉树的顺序存储情况如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 A B C D E 0 F 0 0 G H 0 0 0 X 结点D的左孩子结点为( )。 A.E B.C C.F D.没有 12.一棵“完全二叉树结点数为25,高度为( )。 A.4 B.5 C.6 D.不确定 二、填空题(每空3分,共18分)。 1. 的路径长度:是从根到每个结点的路径长度之和。对结点数相同的来说,路径长度最短的是 完全 二叉树。 2. 在有n个结点的哈夫曼结点数是 2n-1 。 3. 在有n个结点的二叉链表,值为非空的链域的个数为 n-1 。 4. 某二叉树序遍历序列和后序遍历序列正好相反,则该二叉树一定是 任一结点无左孩子 的二叉树。 5. 深度为 k 的二叉树最多有 个结点,最少有 k 个结点。 三、综合题(共58分)。 1. 假定字符集{a,b,c,d,e,f }的字符在电码出现的次数如下: 字符 a b c d e f 频度 9 12 20 23 15 5 构造一棵哈夫曼(6分),给出每个字符的哈夫曼编码(4分),并计算哈夫曼的加权路径长度WPL(2分)。 (符合WPL最小的均为哈夫曼,答案不唯一) 哈夫曼编码: 2. 假设用于通信的电文由字符集{a,b,c,d,e,f,g}的字符构成,它们在电文出现的频率分别为{0.31,0.16,0.10,0.08,0.11,0.20,0.04}。要求: (1)为这7个字符设计哈夫曼(6分)。 (2)据此哈夫曼设计哈夫曼编码(4分)。 (3)假设电文的长度为100字符,使用哈夫曼编码比使用3位二进制数等长编码使电文长压缩多少?(4分) (1) 为这7个字符设计哈夫曼为(符合WPL最小的均为哈夫曼,答案不唯一): (2) 哈夫曼编码为: a:01;b:001;c:100;d:0001;e:101;f:11;g:0000 (3) 假设电文的长度为100字符,使用哈夫曼编码比使用3位二进制数等长编码使电文长压缩多少? 采用等长码,100个字符需要300位二进制数,采用哈夫曼编码发送这100个字符需要261二进制位,压缩了300-261=39个字符。压缩比为39/300=13%。 3. 二叉数T的(双亲到孩子的)边集为: { <A,B>, <A,C>, <D,A>, <D,E>, <E,F>, <F,G> } 请回答下列问题: (1)T的根结点(2分): (2)T的结点(2分): (3)T的深度(2分): (4)如果上述列出边集,某个结点只有一个孩子时,均为其左孩子;某个结点有两个孩子时,则先列出了连接左孩子的边后列出了连接右孩子的边。画出该二叉树其及前序线索(6分)。 (1)T的根结点 (2)T的结点 : (3)T的深度 : (4)该二叉树其及前序线索为: 4.现有以下按前序和序遍历二叉树的结果: 前序:ABCEDFGHI 序:CEBGFHDAI 画出该二叉树的逻辑结构图(5分),并在图加入序线索(5分)。 5.有电文:ABCDBCDCBDDBACBCCFCDBBBEBB。 用Huffman构造电文每一字符的最优通讯编码。画出构造的哈夫曼,并给出每个字符的哈夫曼编码方案。(符合WPL最小的均为哈夫曼,答案不唯一) (1)构造哈夫曼(6分): (2)哈夫曼编码方案(4分):
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值