数据结构刷题5(树和二叉树的基本操作)

🥪🥪🥪各位好,我是小饼干🍪,一个编程界的小学生,每天都希望学习一点点编程相关。最近在CSDN上看到好多的小伙伴都在学数据结构,今天我分享一些习题供大家巩固一下知识,,有些题附上我自己的一些见解,感谢各位的驻足,笔芯♥。

🐱‍🐉二叉树的形态由 3 个结点可以构造出 ▁▁▁▁▁ 种不同形态的二叉树。
A.2
B.3
C.4
D.5

如图所示34cf8fe67e9542f8883ae42d2358cdc9.png

🐱‍🐉深度为6的二叉树最多结点数是( )。
A.64
B.63
C.32
D.31

由二叉树的性质可知
1.一个二叉树第i层的最大结点数为2i-1,i>=1。
2.深度为k的二叉树有最大结点总数2k -1,k>=1。
3.对任何非空的二叉树T,若n0表示叶结点的个数,n2是度数为2的非叶结点个数,那么两者满足关系n0=n2+1
4.根据完全二叉树的定义和性质可知,具有n个结点的完全二叉树的深度为[log2n]+1

🐱‍🐉一棵二叉树中,双分支结点数为15,单分支结点数为30,则叶子结点数为()个。
A.15
B.16
C.17
D.47

根据二叉树的性质计算可得

🧨用孩子链存储结构表示树,其优点之一是____比较方便。
A.判断两个指定结点是不是兄弟
B.找指定结点的双亲
C.判断指定结点在第几层
D.计算指定结点的度数

孩子表示法87bc39d2565c43bc8e33d112aeca2c3b.png

✨用双亲存储结构表示树,其优点之一是比较方便____。
A.找指定结点的双亲结点
B.找指定结点的孩子结点
C.找指定结点的兄弟结点
D.判断某结点是不是叶子结点

双亲表示法d2b8c4735c1d4d61b52302b7432e6ea9.png

🎉对于任意一棵高度为 5 且有 10 个结点的二叉树,若采用顺序存储结构保存,每个结点占 1 个存储单元(仅存放结点的数据信息),则存放该二叉树需要的存储单元的数量至少是:
A.31
B.16
C.15
D.10

二叉树的顺序存储结构是把二叉树的所有节点按照一定的次序顺序存储到一组包含N个存储单元的空间中。在二叉树的顺序存储结构中,只存储节点的值,不存储节点之间的逻辑,节点之间的逻辑关系由数组上下标的顺序来体现。
二叉树的顺序存储原则是:不管给定的二叉树是不是完全二叉树,都看作完全二叉树,即按完全二叉树的层次次序(从上到下,从左到右)把各节点依次存入数组中。

🎃以二叉链表作为二叉树的存储结构,在具有 n 个结点的二叉链表中(n>0),空链域的个数为 __
A.n+1
B.n
C.n−1
D.无法确定

每个结点存储两个指针,n个结点有2n个指针,又因为n个结点中有n-1条边(除了头结点没有边,其余结点都有一个父结点,相当于有个边,共n-1条),剩下的空链域就是2n-(n-1)=n+1个空指针

🎐假设一棵二叉树的结点个数为50,则它的最小高度是( )。
A.4
B.5
C.6
D.7
🎍深度为5的二叉树至多有 ( )个节点
A.16
B.32
C.31
D.10
🎠若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是( )
A.9
B.11
C.15
D.不确定

由二叉树性质可知n0=n2+1

🎆以下关于二叉树的说法中正确的是( )
A.二叉树中每个节点的度均为2
B.二叉树中至少有一个节点的度为2
C.二叉树中每个节点的度可以小于2
D.二叉树中至少有一个节点

二叉树可为空,空的二叉树没有结点,非空二叉树有且仅有一个根节点

🎈对于图所示二叉树,试给出它的顺序存储结构
7e1a45cdfbc8425fbc7dda9c0ce6cf43.png

205139a51597452cac4d5111463ce2e9.png

把该树转为完全二叉树,空位补^,进行一层一层从左向右存储

🎃一棵满二叉树中127个节点,其中叶子节点的个数是( )
A.63
B.64
C.65
D.不确定
🧨以下说法错误的是( )
A.叶子结点是度为零的结点
B.分支结点是度大于零的结点
C.树的度就是树的深度
D.兄弟结点的双亲相同
🎎以下二叉树的先序遍历序列是( )。5beb6645b8854afe89e7e3c497a8c1f9.png

A.ABGCEFHD
B.ABCDEGFH
C.CDBEAFGH
D.DCEBFHGA

先序遍历:先根后左后右

🖼以下二叉树的中序遍历序列是( )。

87855750e8954525855bbad623146d97.png
A.ABCDEGFH
B.CDBEAFGH
C.ABGCEFHD
D.DCEBFHGA

中序遍历:先左后根后右

以下二叉树的后序遍历序列是( )
71b42364bd4448d3bf561fa05f3fdd10.png

后序遍历:先左后右后根

A.DCEBFHGA
B.CDBEAFGH
C.ABCDEGFH
D.ABGCEFHD

🎫若一棵二叉树的后序遍历序列是{ 1, 3, 2, 6, 5, 7, 4 },中序遍历序列是{ 1, 2, 3, 4, 5, 6, 7 },则下列哪句是错的?
A.这是一棵完全二叉树
B.2是1和3的父结点
C.这是一棵二叉搜索树
D.7是5的父结点

由题可得二叉树如图
c94bf7bdf0d349f19d91489e12fb02ce.png

已知二叉树的前序遍历序列为 ABDCEFG,中序遍历序列为 DBCAFEG,则后序遍历序列为 __
A.BDACEFG
B.DCBFGEA
C.ABCDEFG
D.GFEDCBA
已知二叉树的先序遍历序列为ABCDEFGH,中序遍历序列为CBEDFAGH,则该二叉树形态中,父节点的右子节点为()。
A.D
B.H
C.G
D.F
二叉树的高度若根节点为高度1,一棵具有 1025 个结点的二叉树的高度为 ▁▁▁▁▁ 。
A.10
B.11
C.11~1025 之间
D.10~1024 之间
🥼设 T 是非空二叉树,若 T 的先序遍历和中序遍历序列相同,则 T 的形态是 __
A.只有一个根结点
B.没有度为 1 的结点
C.所有结点只有左孩子
D.所有结点只有右孩子
设 T 是非空二叉树,若 T 的先序遍历和后序遍历序列相同,则 T 的形态是 __
A.只有一个根结点
B.没有度为 1 的结点
C.所有结点只有左孩子
D.所有结点只有右孩子
设 T 是非空二叉树,若 T 的后序遍历和中序遍历序列相同,则 T 的形态是 __
A.只有一个根结点
B.没有度为 1 的结点
C.所有结点只有左孩子
D.所有结点只有右孩子
已知一棵二叉树的树形如下图所示,其后序序列为{ e, a, c, b, d, g, f }。树中与结点a同层的结点是:
d5cb2871e39e42d287fe35f518ec2578.png

A.c
B.d
C.f
D.g
一棵二叉树中有7个度为2的结点和5个度为1的结点,其总共有( )个结点。
A.16
B.18
C.20
D.30
在任何一棵二叉树中,若结点a有左孩子b、右孩子c,则在结点的先序序列、中序序列、后序序列中,( )。
A.结点b一定在结点a的前面
B.结点a一定在结点c的前面
C.结点b一定在结点c的前面
D.结点a一定在结点b的前面
假定只有四个结点A、B、C、D的二叉树,其前序遍历序列为ABCD,则下面哪个序列是不可能的中序遍历序列?
A.ABCD
B.ACDB
C.DCBA
D.DABC
在二叉树结点的先序序列,中序序列和后序序列中,所有叶子结点的先后顺序( )。
A.都不相同
B.完全相同
C.先序和中序相同,而与后序不同
D.中序和后序相同,而与先序不同
对 n 个互不相同的符号进行哈夫曼编码。若生成的哈夫曼树共有 115 个结点,则 n 的值是:
A.56
B.57
C.58
D.60
若某二叉树有 5 个叶结点,其权值分别为 10、12、16、21、30,则其最小的带权路径长度(WPL)是:
A.89
B.200
C.208
D.289
已知字符集{ a, b, c, d, e, f, g, h }。若各字符的哈夫曼编码依次是 0100, 10, 0000, 0101, 001, 011, 11, 0001,则编码序列 0100011001001011110101 的译码结果是:
A.acgabfh
B.adbagbb
C.afbeagd
D.afeefgd
若将一棵树 T 转化为对应的二叉树 BT,则下列对 BT 的遍历中,其遍历序列与 T 的后根遍历序列相同的是:
A.先序遍历
B.中序遍历
C.后序遍历
D.按层遍历
已知森林 F 及与之对应的二叉树 T,若 F 的先根遍历序列是 a, b, c, d, e, f,后根遍历序列是 b, a, d, f, e, c,则 T 的后序遍历序列是:
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
某森林 F 对应的二叉树为 T,若 T 的先序遍历序列是 a, b, d, c, e, g, f,中序遍历序列是 b, d, a, e, g, c, f,则 F 中的树的棵树是:
A.1
B.2
C.3
D.4
添加链接描述

  • 23
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 48
    评论
评论 48
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值