当前位置:   article > 正文

算法与数据结构—习题5_算法与数据结构练习题

算法与数据结构练习题

1【单选题】
不含任何结点的空树 ( ) 。

A、是一棵树;

B、是一棵二叉树;

C、是一棵树也是一棵二叉树;

D、既不是树也不是二叉树

  • 正确答案: C

2【单选题】
二叉树是非线性数据结构,所以 ( )

A、它不能用顺序存储结构存储;

B、它不能用链式存储结构存储;

C、顺序存储结构和链式存储结构都能存储;

D、顺序存储结构和链式存储结构都不能使用

  • 正确答案: C

3【单选题】
具有n(n>0)个结点的完全二叉树的深度为 ( )。

A、élog2(n)ù

B、ë log2(n)û

C、ë log2(n) û+1

D、élog2(n)+1ù

  • 正确答案: C
    答案解析:
    注1:éx ù表示不小于x的最小整数;ë xû表示不大于x的最大整数,它们与[ ]含义不同!
    注2:选(A)是错误的。例如当n为2的整数幂时就会少算一层。似乎ë log2(n) +1û是对的?

4【单选题】
把一棵树转换为二叉树后,这棵二叉树的形态是 ( ) 。

A、唯一的
B、有多种
C、有多种,但根结点都没有左孩子
D、有多种,但根结点都没有右孩子

  • 正确答案: A

5【填空题】
由3个结点所构成的二叉树有( )种形态。

  • 正确答案:5

6【填空题】
一棵深度为6的满二叉树有( )个分支结点和 ( ) 个叶子。

  • 正确答案:
    31 32
    答案解析:
    n1+n2=0+ n2= n0-1=31
    26-1 =32
    注:满二叉树没有度为1的结点,所以分支结点数就是二度结点数。

7【填空题】
一棵具有257个结点的完全二叉树,它的深度为 ( ) 。

  • 正确答案:
    9
    答案解析:
    注:用ë log2(n) û+1= ë 8.xx û+1=9

8【填空题】
设一棵完全二叉树有700个结点,则共有( ) 个叶子结点。

  • 正确答案:
    350
    答案解析:
    最快方法:用叶子数=[n/2]=350

9【填空题】
设一棵完全二叉树具有1000个结点,则此完全二叉树有( ) 个叶子结点,有 个度为2的结点,有 ( )个结点只有非空左子树,有 ( )个结点只有非空右子树。

  • 正确答案:
    500 499 1 0
    答案解析:
    最快方法:用叶子数=[n/2]=500 ,n2=n0-1=499。 另外,最后一结点为2i属于左叶子,右叶子是空的,所以有1个非空左子树。完全二叉树的特点决定不可能有左空右不空的情况,所以非空右子树数=0.

10【填空题】
二叉树的基本组成部分是:根(N)、左子树(L)和右子树(R)。因而二叉树的遍历次序有六种。最常用的是三种:前序法(即按N L R次序),后序法(即按 (___)次序)和中序法(也称对称序法,即按L N R次序)。这三种方法相互之间有关联。若已知一棵二叉树的前序序列是BEFCGDH,中序序列是FEBGCHD,则它的后序序列必是 (___) 。

  • 正确答案:
    LRN F E G H D C B
    答案解析:
    法1:先由已知条件画图,再后序遍历得到结果;
    在这里插入图片描述
    法2:不画图也能快速得出后序序列,只要找到根的位置特征。由前序先确定root,由中序先确定左子树。例如,前序遍历BEFCGDH中,根结点在最前面,是B;则后序遍历中B一定在最后面。
    法3:递归计算。如B在前序序列中第一,中序中在中间(可知左右子树上有哪些元素),则在后序中必为最后。如法对B的左右子树同样处理,则问题得解。

11【填空题】
用5个权值{3, 2, 4, 5, 1}构造的哈夫曼(Huffman)树的带权路径长度是 ( )。

  • 正确答案:
    33
    答案解析:
    解:先构造哈夫曼树,得到各叶子的路径长度之后便可求出WPL=(4+5+3)×2+(1+2)×3=33
    在这里插入图片描述
    (注:两个合并值先后不同会导致编码不同,即哈夫曼编码不唯一)
    (注:合并值应排在叶子值之后)

12【判断题】
若二叉树用二叉链表作存贮结构,则在n个结点的二叉树链表中只有n—1个非空指针域

  • 正确答案:√

13【判断题】
二叉树中每个结点的两棵子树的高度差等于1。

  • 正确答案:×

14【判断题】
二叉树中每个结点的两棵子树是有序的。

  • 正确答案:√

15【判断题】
二叉树中每个结点有两棵非空子树或有两棵空子树。

  • 正确答案:×

16【判断题】
二叉树中所有结点个数是2k-1-1,其中k是树的深度。

  • 正确答案:×
    答案解析:
    应该2i-1个,i是树的深度

17【判断题】
对于一棵非空二叉树,它的根结点作为第一层,则它的第i层上最多能有2i—1个结点。

  • 正确答案:×
    答案解析:
    2i-1

18【判断题】
用二叉链表法(link-rlink)存储包含n个结点的二叉树,结点的2n个指针区域中有n+1个为空指针。

  • 正确答案:√
    答案解析:
    用二叉链表存储包含n个结点的二叉树,结点共有2n个链域。由于二叉树中,除根结点外,每一个结点有且仅有一个双亲,所以只有n-1个结点的链域存放指向非空子女结点的指针,还有n+1个空指针。)即有后继链接的指针仅n-1个。

19【判断题】
具有12个结点的完全二叉树有5个度为2的结点。

  • 正确答案:√
    答案解析:
    最快方法:用叶子数=[n/2]=6,再求n2=n0-1=5

20【计算题】
试写出如图所示的二叉树分别按先序、中序、后序遍历时得到的结点序列。
在这里插入图片描述

  • 正确答案:
    DLR:A B D F J G K C E H I L M
    LDR: B F J D G K A C H E L I M
    LRD:J F K G D B H L M I E C A

21【计算题】
画出和下列二叉树相应的森林。
在这里插入图片描述

  • 正确答案:
    在这里插入图片描述
    答案解析:注意根右边的子树肯定是森林,而孩子结点的右子树均为兄弟。

22【阅读理解】
从供选择的答案中,选出应填入下面叙述 _ ?_ 内的最确切的解答,把相应编号写在答卷的对应栏内。

(1) [单选题]
树是结点的有限集合,它 _____ 根结点,记为T。

A、 有0个或1个
B、有0个或多个
C、有且只有1个
D、有1个或1个以上

  • 正确答案:A

(2) [单选题]
其余的结点分成为m(m≥0)个 , ______的集合T1,T2,…,Tm,每个集合又都是树,此时结点T称为Ti的父结点,Ti称为T的子结点(1≤i≤m)。

A、互不相交
B、允许相交
C、允许叶结点相交
D、允许树枝结点相交

  • 正确答案:A

(3) [单选题]
一个结点的子结点个数为该结点的_____ 。

A、权
B、维数
C、次数(或度)
D、序

  • 正确答案:C

–>算法与数据结构—习题6

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/621361
推荐阅读
相关标签
  

闽ICP备14008679号