【数据结构练习】树和二叉树的选择题精选集锦

【数据结构第五章】- 树 详解数据结构第五章-树。 阅读详情
AI摘要

文章介绍了二叉树的中序、后序和前序遍历,强调刷题的重要性,以及如何通过遍历顺序推断树的结构。还探讨了二叉树的深度、完全二叉树的节点数量和结构特点,如层序遍历与深度/宽度优先的区别,以及特定问题如度数和叶子节点的计算。

前言

编程想要学的好,刷题少不了,我们不仅要多刷题,还要刷好题!为此我开启了一个弯道超车必做好题锦集的系列,此为树和二叉树的选择题精选集锦。该系列会不定期更新,敬请期待!


1.已知某二叉树的中序遍历序列为JGDHKBAELIMCF,后序遍历序列为JGKHDBLMIEFCA,则其前序遍历序列为( )

A.ABDGHJKCEFILM

B.ABDGJHKCEILMF

C.ABDHKGJCEILMF

D.ABDGJHKCEIMLF

答案:B

解析:

由后序遍历确定子树的根,后序遍历从后向前看,最后一个元素为根,和前序遍历刚好相反,从后向前看后序遍历,应该是根,右,左,根据中序遍历确定子树的左右区间

故:根为: A

A的左子树:JGDHKB       A的右子树:ELIMCF

A的左子树的根:B        A的右子树的根:C

B的左子树:JGDHK  B的右子树:空  C的左子树:ELIM C的右子树:F

B的左子树的根:D         C的左子树根:E

D的左子树的根:G D的右子树的根:H  E的右子树的根:I

故树的结构为:


2.设根结点的深度为1,则一个拥有n个结点的二叉树的深度一定在(   )区间内

A.[log(n + 1),n]

B.[logn,n]

C.[log(n + 1),n - 1]

D.[log(n + 1),n + 1]

答案:A

解析:

最大深度: 即每次只有一个节点,次数二叉树的高度为n,为最高的高度

最小深度: 此树为完全二叉树, 如果是完全二叉树

根据二叉树性质,完全二叉树的高低为 h = log(n+1)向上取整

故选择A


3.二叉树的( )遍历相当于广度优先遍历,( )遍历相当于深度优先遍历

A.前序 中序

B.中序 前序

C.层序 后序

D.层序 前序

答案:D

解析:

广度优先需要把下一步所有可能的位置全部遍历完,才会进行更深层次的遍历,层序遍历就是一种广度优先遍历。

深度优先是先遍历完一条完整的路径(从根到叶子的完整路径),才会向上层折返,再去遍历下一个路径,前序遍历就是一种深度优先遍历。


 4.如果一颗二叉树的前序遍历的结果是ABCD,则满足条件的不同的二叉树有( )种

A.13

B.14

C.15

D.16

答案:B

解析:

首先这棵二叉树的高度一定在3~4层之间:

三层:

四层:

如果为四层,就是单边树,每一层只有一个节点,除过根节点,其他节点都有两种选择,在上层节点的左边还是右边,所以2*2*2共8种

总共为14种。


 4.n个节点的完全二叉树,最多可以有多少层?

A.n/2

B.log(n)+1(向下取整)

C.n-1

D.n

解析:

根据二叉树性质4:对于完全二叉树,节点个数为n时高度h为

h = log(n+1)向上取整 或者 即3.x 取4

h = log(n)+1向下取整 即3.x 取 3

故应该选择B


5.设一棵二叉树中有3个叶子结点,有8个度为1的结点,则该二叉树中总的结点数为( )个

A.11

B.12​

C.13

D.14

答案:C

解析:

设Ni表示度为i的节点个数,则节点总数 N = N0 + N1 + N2

节点个数于节点边的关系: N个节点的树有N-1个边

边与度的关系:N - 1 = N1 + 2 * N2

故:N0 + N1 + N2 - 1 = N1 + 2 * N2

因此,得:N0 = N2 + 1

回到原题,N0 = 3,N1 = 8,可得N2 = 2。

因此答案是 3 + 8 + 2 = 13。


6.一棵非空的二叉树的先序遍历序列与后序遍历序列正好相反,则该二叉树一定满足( )

A.所有的结点均无左孩子

B.所有的结点均无右孩子

C.只有一个叶子结点

D.至多只有一个结点

答案:C

解析:

前序遍历:根 左 右

后序遍历:左 右 根

从二叉树 前序 和 后序遍历结果规则中可以看出,如果树中每个节点只有一个孩子时,遍历结果肯定是反的

比如下面这前序和中序序列所构成的树的结构:

12345

54321

故每个节点只有一个孩子,即只有一个叶子节点


7.在一颗度为3的树中,度为3的结点有2个,度为2的结点有1个,度为1的结点有2个,则叶子结点有( )个

A.4                         B.5                           C.6                          D.7

答案:C

解析:

设度为i的节点个数为ni, 该树总共有n个节点,则n=n0+n1+n2+n3. 

有n个节点的树的总边数为n-1条.

根据度的定义,总边数与度之间的关系为:n-1=0*n0+1*n1+2*n2+3*n3.

联立两个方程求解,可以得到n0 = n2 + 2n3 + 1,  n0=6


8.一颗拥有1000个结点的树度为4,则它的最小深度是( )

A.5                            B.6                        C.7                        D.8

答案:B

解析:

如果这棵树每一层都是满的,则它的深度最小,假设它为一个四叉树,高度为h,则这个数的节点个数为(4^h - 1) / 3,当h = 5, 最大节点数为341, 当h = 6, 最大节点数为1365,所以最小深度应该为6。

 


9.一颗完全二叉树有1001个结点,其叶子结点的个数是( )

A.251                      B.500                         C.501                       D.不能确定

答案:C

解析:

该题需要用到二叉树性质:在任意二叉树中,度为0的节点都比度为2的节点多1个,即 n0 = n2 + 1

另外,在完全二叉树中,如果节点总个数为奇数,则没有度为1的节点,如果节点总个数为偶数,只有一个度为1的节点

因此:n0 + n1 + n2 = 1001 节点总数为奇数,没有度为1的节点

n0 + 0 + n2 = 2*n0-1 = 1001 n0 = 501


以上为我个人的小分享,如有问题,欢迎讨论!!! 

都看到这了,不如关注一下,给个免费的赞 

【考研】数据结构常考应用典型例题(含真题) 本文针对《数据结构》,博主花了几天时间列出了考研常考的应用题型,讲解详细,方便复习。各类题型所涉及的知识点包括但不限于队列、二叉排序树、平衡二叉树、哈夫曼树及哈夫曼编码、图的存储、最小生成树、关键路径、排序算法等等。(标题即为考点)。例题出自408真题,以及各高校的自主命题(含王道解析)。(后期会继续补充题目)目录前言一、队列二、树(一)二叉排序树(二)平衡二叉树(三)森林与二叉树的转换(四)哈夫曼树及哈夫曼编码三、图(一)邻接表及邻接矩阵、最小生成树(二)DFS和BFS(图的遍历) 阅读详情

相关推荐

SNAP实战:Sentinel-1 GRD数据从预处理到后向散射系数生成全流程解析

本文详细解析了Sentinel-1 GRD数据从预处理到后向散射系数生成的全流程,包括辐射定标、噪声处理、地形校正等关键步骤。通过SNAP软件实战操作,帮助用户掌握SAR影像处理技巧,提升数据质量与分析效率,适用于地表变化监测、灾害评估等应用场景。

weixin_29239661的博客 536

【数据结构】——树和二叉树的相关习题

另外,由于每个结点中包含2个指针域(左指针域lchild、右指针域rchild),总指针域数量减去非空指针数即为空指针数,2n-(n-1)=n+1。考虑第1层到第6层结点都是满的情况,即第1层到第6层结点的结点数量为1+2+4+8+16+32=63个。最少的情况下,除了根结点该层为1个结点以外,其余h-1层都有2个结点,得2(h-1),即2(h-1)+1=2h-1。1、设高度为h的二叉树上只有度为0和度为2的结点,则该二叉树中所包含的结点数至少为(),最多为()。B、中序遍历序列与后序遍历序列相同,为()

小宇y的博客 4751

机器学习 线性回归 头歌实训

第1关:简单线性回归与多元线性回归 第2关:线性回归的正规方程解 第3关:衡量线性回归的性能指标 第4关:scikit-learn线性回归实践 - 波斯顿房价预测

weixin_57270536的博客 1万+

数据结构 树练习题

数据结构 树练习题 1.一棵有124个结点的完全二叉树,其 叶结点个数是确定的。【答案】正确【解析】完全二叉树若设二叉树的深度为h 除第 h 层外 其它各层 1~(h-1) 的结点数都达到最大个数(即1~(h-1)层为一个满二叉树) 第 h 层所有的结点都连续集中在最左边 就是完全二叉树124 = 1 + 2 + 4 + 8 + 16 + 32 + 61有61个叶节点2.二叉树中序线索化后,不存在空指针域。【答案】错误 【解析】非空二叉树中序遍历第一个结点无前驱,最后一个结点无后继,

qq_59183443的博客 3270

【论文精度】生成式预训练模型——BART(Bidirectional and Auto-Regressive Transformers)

​ BART是一个预训练的seq2seq的去噪自编码(denoising autoencoder)模型,BART以下方式进行训练①用任意的噪声函数(noising function)去破坏文本;②学习一个模型来重建原始文本。它使用一个标准的基于transformer的神经机器翻译架构,可以看作是BERT(双向编码器)、GPT(left-to-right解码器)以及其他预训练方案的推广。

weixin_45828972的博客 7450

6万字嵌入式最全八股文面试题大全及参考答案(持续更新)

进程上下文定义:进程上下文包含了进程执行时所需的所有信息,包括 CPU 寄存器的值、内核栈、任务控制块(TCB)等。作用:当进程被切换时,需要保存当前进程的上下文,并恢复下一个将要运行进程的上下文。中断上下文定义:中断上下文是指处理中断时 CPU 所处的状态,包括中断发生时的寄存器值等。作用:当中断发生时,CPU 会自动保存当前的上下文信息,并跳转到相应的中断处理程序。示例表格上下文描述进程上下文包含进程执行时的所有相关信息中断上下文处理中断时 CPU 所处的状态线程同步定义。

大模型大数据攻城狮的专栏 7929

二叉树常见选择题(持续更新)

某二叉树共有 399 个结点,其中有 199 个度为 2 的结点,则该二叉树中的叶子结点数为( ) A 不存在这样的二叉树 B 200 C 198 D 199 正确答案:B 解析:在任何二叉树中,度为 2 的节点总是比度为 0 的节点少一个。而度为 0 的节点就是叶子节点,所以结果为 199+1 = 200。 在具有在具有 2n 个结点的完全二叉树中,叶子结点个数为( )。 A n...

就这样吧 3157

华为OD机试双机位C卷-流浪地球(Py/Java/C/C++/Js/Go)

华为OD机试双机位C卷【流浪地球】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,并提供在线OJ模拟做题。华为OD机试真题【流浪地球】。

qq_45776114的博客 3140

【树和二叉树】—— 九道习题,难易结合,手把手掌握树的基本知识

树,一个不太友好的家伙,今天就好好欺负欺负图论中的它

weixin_52621323的博客 1410

基于深度学习的垃圾邮件识别

垃圾邮件的大量存在严重威胁着电子邮件系统的安全和效率。基于深度学习的垃圾邮件识别技术已经成为目前最有效的解决方案之一。本文将详细介绍使用深度学习技术进行垃圾邮件识别的方法,并提供相应的代码实现。 随着电子邮件的广泛应用,垃圾邮件的数量不断增加,传统的规则和统计方法已经无法满足对垃圾邮件进行准确识别的需求。深度学习技术以其强大的模式识别能力和自动特征提取能力成为解决垃圾邮件识别难题的有效工具。

一键难忘的博客 1094

vue2学习笔记2-老规矩,从Hello World开始,了解Vue实例和模板

想要把“Hello,World”放置在页面上,首先需要准备一个HTML的块级元素div,来承接内容。

l_q_l的专栏 1258

数据结构-树/二叉树与基本算法题

树的基本概念 为什么会有树这种结构?因为现实生活中,我们需要一对多的数据处理。 树的结点:使用树结构存储的每一个数据元素都被称为“结点”。例如,上图1中,数据元素 1 就是一个结点;父结点(双亲结点)、子结点和兄弟结点:对于上图1中的结点 1,2,3,4 来说,1 是 2,3,4 结点的父结点(也称为“双亲结点”),而 2,3,4 都是 1 结点的子结点(也称“孩子结点”)。对于 2,3,4 来说,它们都有相同的父结点,所以它们互为兄弟结点。根结点:每一个非空树都有且只有一个被称为根的结点。上图1中

迷途 516

基于XDMA 的PCIE读写DDR

基于XDMA 的PCIE读写DDR 概述:   想实现基于FPGA的PCIe通信,查阅互联网各种转载…基本都是对PCIe的描述,所以想写一下基于XDMA的PCIe通信的实现(PCIe结构仅做简单的描述(笔记),了解详细结构移至互联网)。 实现功能:PC通过PCIE读写DDR,同时用户通过逻辑代码可以读取被写入DDR内的数据(我是通过VIO实现DDR任意地址,任意数据大小的读取。)。 实践实践!!! 说明: 参考文档: PCI Express Base Specification Revision 3.0 P

Crazzy_M的博客 1万+

校招选择题汇总【树(1)】含答案解析

有问题的下方评论或私聊 1.二叉树的第k层的结点数最多为(D) A.2^k - 1 B.2*k+1 C.2*k-1 D.2^(k-1) 解析:第k层节点最多2^(k-1)个节点,k层二叉树最多2^k-1个节点 2.设某棵二叉树中只有度数为0和度数为2的结点且度数为0的结点数为n,则这棵二叉中共有(C)个结点 A.2n B.n+l C.2n-1 D.2n+l 解析:二叉树...

Teacher_HENG 6388

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

【数据结构】二叉树经典习题

【数据结构】二叉树经典习题

weixin_61932507的博客 3781

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

二叉树经典的选择题(带你轻松理解)

讲解二叉树常见的三种选择题题型

weixin_72040293的博客 3153

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

数据结构练习题之树和图(附答案与解析)

(1)把一棵树转换为二叉树后,这棵二叉树的形态是( )。 A.唯一的B.有多种 C.有多种,但根结点都没有左孩子 D.有多种,但根结点都没有右孩子 答案:A 解释:因为二叉树有左孩子、右孩子之分,故一棵树转换为二叉树后,这棵二叉树的形态是唯一的。 (2)由3个结点可以构造出多少种不同的二叉树?() A.2 B.3 C.4 D.5 ...

小白不白 4843

二叉树的经典例题—数据结构

二叉树

m0_61963422的博客 4885

树与二叉树:选择题50个

单项选择题 (C) 1. 不含任何结点的空树 。 (A)是一棵树; (B)是一棵二叉树; (C)是一棵树也是一棵二叉树; (D)既不是树也不是二叉树 (C) 2.二叉树是非线性数据结构,所以 。 (A)它不能用顺序存储结构存储; ...

心中的利剑:HTML5 Canvas游戏动画(JavaScript) 1260

数据结构与算法-树练习题

一.单选题(共7题,25.9分) 1、树型结构最适合用来描述( )。 A、有序的数据元素 B、无序的数据元素 C、数据元素之间的具有层次关系的数据 D、数据元素之间没有关系的数据 正确答案: C 2、在非空二叉树的中根遍历序列中,二叉树的根结点的左边应该( )。 A、只有左子树上的所有结点 B、只有左子树上的部分结点 C、只有右子树上的所有结点 D、只有右子树上的部分结点 正确答案: A 3、树中所有结点的度之和等于所有结点数加( )。 A、0 B、1 C、-1 D、2..

笑对人生 策码奔腾 2324

二叉树的性质与推导及常见习题整理

二叉树的基本性质及习题全面总结。

wyd_333的博客 2747

二叉树练习题及答案解析

二叉树练习一、选择题1. 某二叉树共有 399 个结点,其中有 199 个度为 2 的结点,则该二叉树中的叶子结点数为( )2.在具有 2n 个结点的完全二叉树中,叶子结点个数为( )3.一棵完全二叉树的节点数位为531个,那么这棵树的高度为( )4.一个具有767个节点的完全二叉树,其叶子节点个数为()5. 某完全二叉树按层次输出(同一层从左到右)的序列为 ABCDEFGH 。该完全二叉树的前序序列为()6. 二叉树的先序遍历和中序遍历如下:先序遍历:EFHIGJK;中序遍历:HFIEJKG.则二叉树根结

m0_52322019的博客 7879

校招选择题汇总【树(2)】含答案解析

1.在一非空二叉树的中序遍历序列中,根结点的右边(A) A.只有右子树上的所有结点 B.只有右子树上的部分结点 C.只有左子树上的部分结点 D.只有左子树上的所有结点 解析:中序遍历:左根右 2.深度为5的二叉树至多有(D)个结点 A.16 B.10 C.32 D.31 解析:2的k次方减一,k=5,代入得31 3.红黑树中已经有n个数据,寻找某个key是否存在的时间复杂度...

Teacher_HENG 7524

[数据结构]长文带你玩转二叉树,期末考试必看篇

已经到了期末了,还有同学不会二叉树?还不点进来学习! 详细的讲解了二叉树的性质与三种遍历,附带几道leetcode帮助大家更好的理解递归。

qq_64066766的博客 1395

【数据结构】二叉树经典例题---<你真的掌握二叉树了吗?>(第一弹)

中序< EFGH>和后序< FHGE >可以得知,< FGH>为E的右子树,然后根据后序 可以得之,G为结点。前序遍历(根左右): a->b->d->g->e->c->f->h。中序遍历(左根右): d->g->b->e->a->f->h->c。后序遍历(左右根): g->d->e->b->h->f->c->a。(6)中序线索化: d->g->b->e->a->f->h->c。前序线索化: a->b->d->g->e->c->f->h。G为子树的结点,根据中序可以得知,F为左结点,H为右结点。

2302_76305195的博客 3282

【数据结构】树与二叉树、树与森林部分习题与算法设计例题

【数据结构】树与二叉树、树与森林部分习题与算法设计例题

ChenZHIHAO_y的博客 2411
上一篇: 简单说明反射和new的区别和反射的使用代码展示
下一篇: MySQL数据库基础
WH牛
博客等级 码龄4年 613粉丝 107原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值