第六章树和二叉树作业1—二叉树(判断和选择)

一、判断题

1、

在这里插入图片描述

答案:T

解析:
后序:左右根
中序:左根右
所以说,如果刚好一样的话,只能是二叉树的任何结点都没有右孩子。


2、

在这里插入图片描述

答案:F


3、

在这里插入图片描述

答案:F

解析:没有确定二叉树的类型

二叉树的类型

(1)满二叉树:除最后一层无任何子节点外,每一层上的所有结点都有两个子结点二叉树。
在这里插入图片描述

(2)完全二叉树(满足下面两个条件)

在这里插入图片描述
第一种是

  • 一棵二叉树只有倒数第二层上的结点的度数(每个结点有几个分支,度数即为几)可以小于2,其余每层上的结点的度数都等于2。
  • 空缺在右边(只要不是左边就行,不一定必须在相对于根节点来说的左子树上)
    在这里插入图片描述

第二种是
满二叉树

下图中左边是完全二叉树,右边不是完全二叉树
在这里插入图片描述

(3)平衡二叉树:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树

(4)二叉搜索树:它的定义与树的定义是类似的,也是一个递归的定义:

  • 要么是一棵空树
  • 如果不为空,那么其左子树节点的值都小于根节点的值;右子树节点的值都大于根节点的值
  • 其左右子树也是二叉搜索树

4、

在这里插入图片描述

答案:F

解析:
前序:根左右
中序:左根右
(1)因为a和b都是叶子节点,所以并不影响他们访问的先后次序,叶子结点不管是在哪种遍历方法中,它们的相对位置是不变的。
(2)先序遍历、中序遍历、后序遍历三个其实是相对根来说的,叶子结点左右遍历的顺序是不变的。


树的三种遍历方式

(1)前序遍历:根左右

在这里插入图片描述

  • 先序遍历的时候,先访问总根节点
  • 之后,访问总根节点的左子树的根,然后左子树,之后右子树,右子树也可能是根,但是先序遍历,就应该先遍历根,所以又开始了根——左子树——右子树(根),依次类推
  • 最后,访问总根节点的右子树的根,又开始了根——左子树——右子树(根),依次类推

(2)中序遍历:左右根

在这里插入图片描述

  • 中序遍历的时候,先从总根节点的左子树开始遍历,左子树——根——右子树(可能是下一棵子树的根节点)这样,先访问右子树所在子树的左结点——根——右子树(可能是下一棵子树的根节点),依次类推。
  • 当左半边访问完之后,再访问总根节点
  • 然后以同样的顺序访问总根节点的右子树

(3)后序遍历:左右根

在这里插入图片描述

  • 后序遍历的时候,先从总根节点的左子树开始遍历,左子树——右子树(可能是下一棵子树的根节点)这样,先访问右子树所在子树的左结点——右子树(可能是下一棵子树的根节点),依次类推。最后,再一个个回退访问“根节点”
  • 然后以同样的顺序访问总根节点的右子树
  • 当左和右两个半边都访问完之后,再访问总根节点

5、

在这里插入图片描述

答案:F

解析:
中序:左根右
前序:根左右
这么看确实正确,但正确的前提是都有右子树,对于只有根和左子树的图是不成立的。


6、

在这里插入图片描述

答案:T

解析:
前序:根左右
中序:左根右
一样的话,那么一定没有左孩子


7、

在这里插入图片描述

答案:T

解析:
先序:根左右
中序:左根右

1.找出根节点:A

2.可能的树的类型,本题目只有两种

3.这两种树的中序遍历都不是CAB,一个是BAC,一个是CBA


单选题

1、

在这里插入图片描述

答案:A

解析:1+k+k2+k3+k4+…+kh-1=1*(1-kn)/1-k

等比公式:Sn=a1(1-qn)/(1-q)

所以答案是A


2、

在这里插入图片描述

答案:D

解析:每层只有第一个节点往下分,然后加上根节点即可
例如

  • 2层:1+k
  • 3层:2+k+k

3、

在这里插入图片描述

答案:B

解析:
先序:根左右
中序:左根右
所以要先序与中序相同,只能没有左子树,只有右子树


4、

在这里插入图片描述

答案:B

解析:
在这里插入图片描述

所以说,如果不是按照先序排列的话,一个结点为左结点或者右结点的同时,还可能是根,这个时候,先看以左结点或者右结点为根的子树的左结点和右结点,依次类推。也就是说,遇到既是左结点或者右结点,还是根的时候,先放一下,看以它为根的子树的左右结点。


5、

在这里插入图片描述

答案:A

解析:

(1)树的度:

  • 度:每一个结点所拥有的子树的个数
  • 树的度:最大的度数就是树的度

(2)有好多种二叉树,所以不一定是2

(3)二叉堆满足二个特性:

https://blog.csdn.net/x_y_q_/article/details/51707444

  • 父结点的键值总是大于或等于(小于或等于)任何一个子节点的键值。
  • 每个结点的左子树和右子树都是一个二叉堆(都是最大堆或最小堆)。
  • 当父结点的键值总是大于或等于任何一个子节点的键值时为最大堆
  • 当父结点的键值总是小于或等于任何一个子节点的键值时为最小堆。

6、

在这里插入图片描述

答案:A

解析:
(1)由后序排列可得根节点是4,所以,左边有123,右边有567,根节点是4

(2)假设是按照标准的排序,就是没有是结点同时又是根的情况的时候

  • 对于左子树来说

后序:1(左)3(右)2(根)
中序:1(左)2(根)3(右)刚好与中序排序相同,所以是正确的

  • 对于右子树来说:
    后序:6(左)5(右)7(根)
    中序:6(左)7(根)5(右)但是与中序排序不同,说明,出现了某一个结点即使左/右结点,同时也是根节点的情况

(3)不管是不是有某一个结点即使左/右结点,同时也是根节点的情况,小的总根节点就是根节点,位置是不会变的,所以根据后序排列,可知右子树的根节点是7(一般首选后序排列求根节点,没有后序排列的话,就根据前序排列求根节点,不管是总根节点,还是左子树的根节点,还是右子树的根节点。

(4)假设是
在这里插入图片描述

对于后序:左右根:6-5-7是正确的
对于中序:左根右:5是根,所以找5所在的子树的左子树,所示是6-5-7
但是不对,所以不是这样的排序顺序

(5)假设是
在这里插入图片描述

对于后序:左右根:左边的也是根,所以找下一个子树,6-5-7是正确的
对于中序:左根右:左边的也是根,所以找下一个子树,左边空,根是5,右边是6,所以是5-6-7,所以正确

(6)最终图形为

在这里插入图片描述

根据完全二叉树的特点,所以不是完全二叉树,所以A是错误的。
左小于根,右大于根,所以是二叉搜索树。


7、

在这里插入图片描述

答案:C

解析:对于任何一棵树,结点总数=总分支数目+1,叶子没有分支数

设有x个叶子结点,那么m+x=m*k+1,所以,x=m(k-1)+1


8、

在这里插入图片描述

答案:D

解析:对于任何一棵树,结点总数=总分支数目+1,叶子没有分支数

2+3+4+x=2*2+3*3+4*4+1
x=21

9、

在这里插入图片描述

答案:D

解析:
(1)由后序排列可得根节点是4,所以,左边有213,右边有657,根节点是4

(2)假设是按照标准的排序,就是没有是结点同时又是根的情况的时候

  • 对于左子树来说

前序:2(根)1(左)3(右)
中序:1(左)2(根)3(右)刚好与中序排序相同,所以是正确的

  • 对于右子树来说:
    后序:6(根)5(左)7(右)
    中序:5(左)6(根)7(右)刚好与中序排序相同,所以是正确的

(3)图为

在这里插入图片描述满二叉树也是完全二叉树的一种,所以,这也是一颗完全二叉树。


10、

在这里插入图片描述

答案:C

解析:
要作图的,有两层的,有三层的,
两层的有:母节点是A,A的左子节点为B,A的右子节点为C
三层的有:
1、母节点是A,A的右子节点为B,B的右子节点为C
2、母节点是A,A的右子节点为B,B的左子节点为C
3、母节点是A,A的左子节点为B,B的右子节点为C
4、母节点是A,A的左子节点为B,B的左子节点为C


11、

在这里插入图片描述

答案:B

解析:叶结点的相对顺序是不会改变的


12、

在这里插入图片描述

答案:C

解析:

  • 在二叉树的第 i 层上至多有2i-1个结点
  • 深度为 k 的二叉树上至多含2k-1个结点(k≥1)

所以25-1=16


13、

在这里插入图片描述

答案:B

解析:先序:根左右,若某一个结点既是左结点/右结点,同时,也是根节点的话,先看以其为根节点的子树的根左右。


14、

在这里插入图片描述

答案:A

解析:对于任何一棵树,结点总数=总分支数目+1,叶子没有分支数

5+3+2+x=1*5+2*3+3*2+1
x=8

15、

在这里插入图片描述

答案:C

解析:
中序:左根右
后序:根左右
相反,所以一定没有左孩子


16、

在这里插入图片描述

答案:B

解析:
前序:根左右
后序:左右根
中序:左根右

  • 一棵具有N个结点的二叉树的前序序列和后序序列正好相反 ,则该二叉树一定满足该二叉树只有左子树或只有右子树,即该二叉树一定是一条链(二叉树的高度为N,高度等于结点数)(高度:根节点为1,下面依次为2、3…)
  • 前序序列和中序序列正好相反,任一结点无右孩子
  • 中序序列和后序序列正好相反,任一结点无左孩子

17、

在这里插入图片描述

答案:A

解析:
中序:左根右,所以要想在前面,n就得在m的左方


18、

在这里插入图片描述

答案:B


19、

在这里插入图片描述

答案:B

解析:
最少结点数:

  • 2层:3个
  • 3层:1+2+2=5个
  • 4层:1+2+2+2=7个


所以为B


20、

在这里插入图片描述

答案:A

解析:

  • 度数:含有子树的个数
  • 树的度数:最大的度数
  • 二叉树也需要分好多种类型
  • 并非所有二叉树的左右子树都可以任意交换的,要看二叉树自己的特性要求,像堆或者搜索二叉树是不允许交换左右子树的
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值