树和森林解析

01.下列关于树的说法中,正确的是(D).
Ⅰ.对于有n个结点的二叉树,其高度为log2n
Ⅱ.完全二叉树中,若一个结点没有左孩子,则它必是叶结点
Ⅲ.高度为h (h>0)的完全二叉树对应的森林所含的树的个数一定是h
IV.一棵树中的叶子数一定等于与其对应的二叉树的叶子数
A.I和III.                                B.Ⅳ                       C.I.和Ⅱ                        D.Ⅱ                                     
解析:Ⅰ若有n个结点的二叉树是一颗单支树,则其高度为n
Ⅱ完全二叉树中最多存在一个度为1的结点且只有左孩子,若不存在左孩子则一定也不存在右孩子,因此必是叶结点,正确
Ⅲ只有满二叉树对应的森林所含树的个数一定是h,如下图所示

Ⅳ 在树转换为二叉树时,若几个叶子结点具有共同的双亲,则转换为二叉树后只有一个叶结点(最右边的叶结点),如下图所示

02.利用二叉链表存储森林时,根结点的右指针是(D )。
A.指向最左兄弟                 B.指向最右兄弟                 C.一定为空                         D.不一定为空
解析:森林转换为二叉树,若森林只有一棵树,则根结点的有右指针为空,若存在第二棵树,则二叉链表的根结点的右指针指向的是森林中第二棵树的根结点

03.设森林F中有3棵树,第1、2、3棵树的结点个数分别为M1,M2和M3,与森林F对应的二叉树根结点的右子树上的结点个数是( D )。
A. M1                                B.M1+M2                            C. M3                                 D. M2+M3
解析:森林转换二叉树需要将每棵树的根结点全部视为兄弟结点的关系,树2做为树1根结点的右子树,树3作为树2根结点的右子树,因此森林F对应的二叉树根结点的右子树上的结点个数是M2+M3

04.设森林F中有4棵树,第1、2、3、4棵树的结点数分别为a、b、c和d,与森林F对应的二叉树的根结点的左子树上的结点数是( C)。
A. a                                    B.b+c+d                              C. a-1                                 D. a+b+c
解析:森林转换为二叉树后,二叉树的根结点为第1棵树的根结点,二叉树的根结点的左子树包含第一棵树的所有孩子,所以不包括根结点

05.设森林F对应的二叉树为B,它有m个结点,B的根为p,p的右子树结点数为n,森林F中第一棵树的结点数是( A ).
A. m-n                                B. m-n-1                               C. n+1                     D.条件不足,无法确定
解析:森林转换为二叉树时采用孩子兄弟表示法,根结点及其左子树为森林中的第一棵树,右子树为其他剩余的树,所以第一棵树的结点个数为m-n

06.设森林F对应的二叉树是一棵具有16个结点的完全二叉树,则森林F中树的数目和结点最多的树的结点数分别是(  D )。
A.2和8                                B.2和9                                  C.4和8                                D.4和9
解析:森林转换为二叉树后,二叉树的根结点及其左子树由第一棵树转换得到,二叉树的根结点的右子树由剩余的森林转换得到,以此类推可划分出第2,3...棵树的结点,具有16个结点的完全二叉树的形态如下图所示,沿二叉树的根结点往右下遍历,共有四个结点,可知森林中由四棵树,其中第一棵结点数最多,有9个

07、森林T=(T1,T2,… , Tm)转化为二叉树BT的过程为:若m=0,则BT为空,若m≠ 0,则(  B  ).
A.将中间子树Tmid ( mid =(1+m)/2)的根作为BT的根; 将(T1,T2,… , Tmid-1)转换为BT的左子树; 将(Tmid+1,…., Tm)转换为BT的右子树
B.将子树T1的根作为BT的根; 将T1的子树森林转换成BT的左子树; 将(T2,T3,…, Tm)转换成BT的右子树
C.将子树T1的根作为BT的根; 将T1的左子树森林转换成BT的左子树; 将T1的右子树森林转换为BT的右子树; 其他以此类推
D.将森林T的根作为BT的根; 将(T1,T2,…,Tm)转化为该根下的结点,得到一棵树,然后将这棵树再转化为二叉树BT
解析:森林转二叉树是将森林中每棵树的根结点视为兄弟结点的关系,再按照“左孩子右兄弟”的规则来进行转化

08.设F是一个森林,B是由F变换来的二叉树。 若F中有n个非终端结点,则B中右指针域为空的结点有( )个。
A. n-1                                 B. n                                 C. n+1                         D. n+2
解析:根据森林与二叉树转换规则“左孩子右兄弟”。二叉树B中右指针域为空代表该结点没有兄弟结点。森林中每棵树的根结点从第二个开始依次连接到前一棵树的根的右孩子,因此最后一棵树的根结点的右指针为空。另外,每个非终端结点,其所有孩子结点在转换之后,最后一个孩子的右指针也为空,所以树B中右指针域为空的结点有n+1个。

09.设某树的孩子兄弟链表示中共有6个空的左指针域、7个空的右指针域,包括5个结点的左、右指针域都为空,则该树中叶结点的个数是( B  ).
A.7                                       B. 6                                 C. 5                              D.不能确定
解析:树的孩子兄弟表示法中,若一个结点没有孩子,则表现为该结点的左指针域为空

10.若T是由有序树T转换而来的二叉树,则T中结点的后根序列就是T中结点的( B )序列。
A.先序                                 B.中序                              C.后序                          D.层序

11.某二叉树结点的中序序列为BDAECF,后序序列为DBEFCA,则该二叉树对应的森林包
括 ( C )棵树。
A.1                                       B.2                                  C. 3                                 D.4
解析:根据中序和后序序列可以确定二叉树的形态,如下图所示,根据二叉树与森林的对应关系,森林中树的棵树即为对应二叉树的根结点A及其右兄弟数,所以森林中有三棵树,根结分别为ACF

12.设X是树T中的一个非根结点,B是T所对应的二叉树。在B中,X是其双亲结点的右孩子,下列结论中正确的是(D).
A.在树T中,X是其双亲结点的第一个孩子                B.在树T中,X一定无右边兄弟
C.在树T中,X一定是叶结点                                     D.在树T中,X一定有左边兄弟
解析:在二叉树B中,X是其双亲的右孩子,因此在树T中,X必是其双亲结点的右兄弟,在二叉树中X必有左兄弟

13.在森林的二叉树表示中,结点M和结点N是同一父结点的左儿子和右儿子,则在该森林中( B ).
A.M和N有同一双亲                                                   B.M和N可能无公共祖先
C.M是N的儿子                                                          D.M是N的左兄弟
解析:在森林的二叉树表示中,当M和N的父结点是二叉树根结点是,M和N在不同树上

14.【2009统考真题】将森林转换为对应的二叉树,若在二叉树中,结点u是结点v的父结点的父结点,则在原来的森林中,u和v可能具有的关系是(  B ).
Ⅰ父子关系            Ⅱ.兄弟关系                          Ⅲ. u的父结点与v的父结点是兄弟关系
A.只有Ⅱ                            B.I和Ⅱ                        C.I和Ⅲ                         D.I、II和Ⅲ
解析:森林转二叉树转换规则为左孩子右兄弟,在最后生成的二叉树中,父子关系在对应的森林关系中可能是兄弟关系或原本就是父子关系,情形如下:

若u的父结点与v的父节点是兄弟关系,则转换后,结点u和v分别在两者最左父结点的两棵子树中,不可能出现在同一路径中

15.【2011统考真题】已知一棵有2011个结点的树,其叶结点个数为116,该树对应的二叉树中无右孩子的结点个数是(  D  ).
A.115                                 B. 116                              C.1895                         D.1896
解析:树转换为二叉树时,树的每个分支结点的所有子结点中的最右子结点无右孩子,根结点转换后也没有右孩子,因此对应二叉树中无右孩子的结点个数=分支结点树+1=2011-116+1=1896

16.【2014统考真题】将森林F转换为对应的二叉树T,F中叶结点的个数等于( C ).
A.T中叶结点的个数                                                   B.T中度为1的结点个数
C. T中左孩子指针为空的结点个数                            D.T中右孩子指针为空的结点个数
解析:森林转换为二叉树相当于用孩子兄弟法来表示森林,变化过程中,原森林某结点的第一个孩子结点作为它的左子树,它的兄弟结点作为它的右子树,森林中的叶节点没有孩子结点,转换为二叉树时,该结点就没有左结点。

17.【2019统考真题】若将一棵树T转化为对应的二叉树BT,则下列对BT的遍历中,其遍历序列与T的后根遍历序列相同的是( B ).
A.先序遍历                         B.中序遍历                     C.后序遍历                      D.按层遍历

18.【2020统考真题】已知森林F及与之对应的二叉树T,若F的先根遍历序列是a,b, c, d, e,f,后根遍历序列是 b, a, d,f, e, c,则T的后序遍历序列是(C )
A. b, a,d,f, e, c                                                          B. b,d,f, e, c,a
C. b,f, e, d, c, a                                                         D. f, e, d, c, b, a
解析:根据先序遍历和中序遍历可确定二叉树的结构

19.【2021统考真题】某森林F对应的二叉树为T,若T的先序遍历序列是a, b, d, c, e, g,f,中序遍历序列是b, d, a, e,g, c,f,则F中树的棵数是( C )
A.1                                    B.2                                    C. 3                                D.4
解析:先序 根左右 a  b d c e g f
           中序 左根右 b d a e g c f
           可知二叉树形态如下,有三棵树acf

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/490803.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python中的数据类型有四类八种如何理解?

在Python中,数据类型大致可以分为四大类,包含了八种基本的数据类型,这些分类有助于理解和使用Python进行编程。这四大类分别是: 数字类型 (Numeric Types): 整型 (int): 表示没有小数部分的整数,可以是正数、负数或零。…

2024年【熔化焊接与热切割】考试报名及熔化焊接与热切割找解析

题库来源:安全生产模拟考试一点通公众号小程序 熔化焊接与热切割考试报名考前必练!安全生产模拟考试一点通每个月更新熔化焊接与热切割找解析题目及答案!多做几遍,其实通过熔化焊接与热切割实操考试视频很简单。 1、【单选题】 下…

nandgame中的控制单元(Control Unit)

关卡说明的翻译: 控制单元除了ALU指令之外,计算机还应支持数据指令。在数据指令中,指令值直接写入A寄存器。创建一个控制单元,根据指令I的高位执行数据指令或ALU指令:位 15 0 数据指令 1 ALU指令ALU指令 对于ALU指令&…

一阶低通滤波

一阶低通滤波是一种信号处理技术,用于去除信号中高频部分,保留低频部分。在滤波过程中,一阶低通滤波器会使得高于某个截止频率的信号被衰减,而低于截止频率的信号则会被保留。这有助于减少噪音或者不需要的信号成分,从…

前端小白的学习之路(webpack)

提示:webpack简介,nvm,npm配置环境,常用命令,基本web项目构建 目录 webpack 1.配置环境 1)node.js node常用命令 2)nvm nvm常用命令: 3)npm npm常用命令 2.构建简易web项目 1)创建目录 2)安装webpack依赖 3)配置 webpac…

nandgame中的复合存储器

output部分的三个寄存器是用于校验结果的, 实际还得摆放寄存器A、D和RAM 然后st都是触发导通,cl都是触发传值, ad是address的缩写 *a是c语言的写法,a为地址,*a就是地址a指向位置存储的数值。

C语言之strchr用法实例(八十八)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…

代码随想录算法训练营第二十天|654.最大二叉树、617.合并二叉树、700.二叉搜索树中的搜索、98.验证二叉搜索树

代码随想录算法训练营第二十天|654.最大二叉树、617.合并二叉树、700.二叉搜索树中的搜索、98.验证二叉搜索树 654.最大二叉树 给定一个不重复的整数数组 nums 。 最大二叉树 可以用下面的算法从 nums 递归地构建: 创建一个根节点,其值为 nums 中的最大值。递归地…

vue项目使用eletron将打包成桌面应用(.exe)

vue项目使用eletron将打包成桌面应用(.exe) 1.前期准备 两个项目: 1、自己用vue cli创建的项目 2、第二个是去gitee将案例clone下来 案例地址 https://gitee.com/qingplus/electron-quick-start.git 2、测试案例是否可以正常运行 # 进入项目 cd electron-quick-…

k8s入门到实战(六)—— ConfigMap介绍

ConfigMap configmap 是 k8s 中的资源对象,用于保存非机密性的配置的,数据可以用 kv 键值对的形式保存,也可通过文件的形式保存。 什么是 configmap 在 k8s 中,ConfigMap 是一种用于存储应用程序配置数据的对象。它允许将配置信…

JVM(三)——字节码技术

三、字节码技术 1、类文件结构 一个简单的 HelloWorld.java package com.mysite.jvm.t5; // HelloWorld 示例 public class HelloWorld {public static void main(String[] args) {System.out.println("hello world");} }执行 javac -parameters -d . HellowWorld.…

家用洗地机什么牌子好?2024四款家用洗地机良心推荐

洗地机集合了吸拖扫为一体的清洁设备,可以吸走灰尘,吸走污渍,还能杀菌等等,高效清洁又省力!对于工作忙的上班族,带娃的宝妈,还有体弱的老人都非常适合。但是说到选购产品这方面,很多…

leetcode mt simple

Leetcode-MT-Simple 文章实际写于2021年,那个炎热的夏天。 Leet Code 美团题库简单类总结,题目按照解法可大致分为数学法、计数法、位运算、双指针法、字符串、哈希表、栈、递归/迭代、排序法、匹配法、记忆化法、二分法、分治法、摩尔投票法、前缀和、…

头条网盘如何快速获取授权推广

近期可以说是网盘拉新的一个盛宴,好几家网盘为了抢夺用户,都在付费拉新用户,而如今头条网盘也需要开拓市场,方式也很简单粗暴,就是拿钱砸,而对于普通用户来说,只要获得授权,正是赚钱…

NVIDIA A100 NVLink 和 NVIDIA A100 PCIe的区别?

NVIDIA A100 NVLink 和 NVIDIA A100 PCIe 是两种不同连接方式的 NVIDIA A100 GPU。 NVIDIA A100 NVLink: 这种版本的 A100 GPU 使用 NVLink 连接方式,可以实现更高的带宽和更低的延迟。NVLink 是 NVIDIA 的一种专有连接技术,用于连接多个 GPU&#xff0c…

方案功能开发:智能机器人玩具

玩具电动趣萌机器人方案开发定制,东莞市酷得智能科技有限公司是研发型芯片贸易公司,可为制造厂商朋友定制软件底层方案。下面介绍一下机器人方案可实现的功能: 基础功能: 方向:前进,后退,左转&a…

10分钟搭建一套代码质量监控平台

01、jenkins安装部署 01、Jenkins下载 中文官网地址:https://www.jenkins.io/zh/ 02、Jenkins环境安装 安装jdk,上传jenkins安装包,启动jenkins,耐心等待启动完成(第一次需要个几分钟) java -jar jenkins.war 执行日志里一定…

JAVA面试大全之集合IO篇

目录 1、集合 1.1、Collection 1.1.1、集合有哪些类? 1.1.2、ArrayList的底层? 1.1.3、ArrayList自动扩容? 1.1.4、ArrayList的Fail-Fast机制? 1.2、MAP 1.2.1、Map有哪些类? 1.2.2、JDK7 HashMap如何实现…

基于springboot的交通管理在线服务系统的开发

传统办法管理信息首先需要花费的时间比较多,其次数据出错率比较高,而且对错误的数据进行更改也比较困难,最后,检索数据费事费力。因此,在计算机上安装交通管理在线服务系统软件来发挥其高效地信息处理的作用&#xff0…

人工智能的春天:改变已然发生

以下文章来源:青岛日报 某种意义上说,这个春天属于人工智能(AI)。 继一年多前ChatGPT惊艳全球后,OpenAI再次放出“王炸”成果——视频大模型Sora;苹果放弃布局多年的造车计划,将ALL in AI&#…