树和森林选择题练习题

树和森林里面比较经典的几道选择题。
1 How many trees are in the forest with N nodes and K edges?
一个有N个节点和K条边的森林有多少棵树?
A.N−K B.N−K+1 C.N−K−1 D.cannot be determined
2、若森林F有15条边、25个结点,则F包含树的个数是:
A.8 B.9 C.10 D.11
3、设森林T中有4棵树,第一、二、三、四棵树的结点个数分别是n1,n2,n3,n4,那么当把森林T转换成一棵二叉树后,根结点的右子树上有( )个结点。
A.n1-1 B.n1 C.n1+n2+n3 D.n2+n3+n4

4、设森林T中有4棵树,第一、二、三、四棵树的结点个数分别是n1,n2,n3,n4,那么当把森林T转换成一棵二叉树后,根结点的左孩子上有( )个结点。

5、设森林F中有3棵树, 第一、第二和第三棵树的结点个数分别为m​1​​ 、m​2
​​和m​3。与森林F对应的二叉树根结点的右子树上的结点个数是____。

A.m​1 ​B.m1 +m​2 C.m3 D.m​2​​ +m​3
​​
1、A 2、C 3、D 4、A 5、D

森林F转换成一的过程如下: 1. 将每看作一个结点,构成一个新的森林G。 2. 在森林G中加入一个根结点r,并将所有的根结点连接到r上。 这样,就得到了一新根结点r的左子为T1,右子为T2。因为原来的森林F中有3,所以T1和T2都是由一转换得到的。T1对应的结点个数为n,T2对应的结点个数为m,则有以下关系: 1. n + m = n1 + n2 + n3 + 1 2. m = max(n2, n3) 第一条关系的解释是,T1和T2中所有结点个数之和,加上根结点r,应该等于原来所有结点个数之和,再加上新加入的根结点r。 第条关系的解释是,因为只有在n1 + n2 + n3中的后两才能成为T2的,所以m只可能等于n2n3中的较大值。 因此,可以得到: n = n1 + n2 + n3 + 1 - max(n2, n3) 因为T1和T2都是由一转换得到的,所以T2中的所有结点都是T1中某个结点的后代。因此,T2的根结点的右子中的结点个数就是T1中度为2的结点个数T1中度为2的结点个数为k,则T2的根结点的右子中有k个结点。 因为T1中有n个结点,T2中有m个结点,所以T1和T2中度为2的结点总数为k = n + m - 1。因此,T2的根结点的右子中有k个结点,即: k = n + m - 1 = (n1 + n2 + n3 + 1 - max(n2, n3)) + max(n2, n3) - 1 = n1 + n2 + n3 因此,T2的根结点的右子中有n1 + n2 + n3结点
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值