电大数据结构(本)形考作业3-阶段性学习测验3答案

"题目1:假定一棵二叉树中,双分支结点数为15,单分支结点数为30,则叶子结点数为(   )。
: 16
; 15
; 17
; 47"

"题目2:二叉树第k层上最多有(   )个结点。
: 2k-1
; 2k
; 2k-1
; 2k-1"

"题目3:将含有150个结点的完全二叉树从根这一层开始,每一层从左到右依次对结点进行编号,根结点的编号为1,则编号为69的结点的双亲结点的编号为(   )。
: 33
; 34
; 35
; 36"

"题目4:如果将给定的一组数据作为叶子数值,所构造出的二叉树的带权路径长度最小,则该树称为(   )。
: 二叉树
; 平衡二叉树
; 哈夫曼树
; 完全二叉树"

"题目5:在一棵度具有5层的满二叉树中结点总数为(   )。
: 33
; 32
; 16
; 31"

"题目6:一棵完全二叉树共有6层,且第6层上有6个结点,该树共有(   )个结点。
: 38
; 37
; 72
; 31"

"题目7:利用3、6、8、12这四个值作为叶子结点的权,生成一棵哈夫曼树,该树中所有叶子结点中的最长带权路径长度为(   )。
: 18
; 16
; 30
; 12"

"题目8:在一棵树中,(   )没有前驱结点。
: 空结点
; 树根结点
; 叶结点
; 分支结点"

"题目9:设一棵采用链式存储的二叉树,除叶结点外每个结点度数都为2,该树结点中共有20个指针域为空,则该树有(      )个叶结点。
: 21
; 22
; 10
; 9"

"题目10:在一个图G中,所有顶点的度数之和等于所有边数之和的(   )倍。
: 2
; 4
; 1
; 1/2"

"题目11:邻接表是图的一种(   )。
: 链式存储结构
; 索引存储结构
; 顺序存储结构
; 散列存储结构"

"题目12:图的深度优先遍历算法类似于二叉树的(   )遍历。
: 后序
; 先序
; 层次
; 中序"

"题目13:已知下图所示的一个图,若从顶点V1出发,按深度优先搜索法进行遍历,则可能得到的一种顶点序列为(   )。

: V1V2V4V8V3V5V6V7
; V1V3V6V7V2V4V5V8
; V1V2V4V5V8V3V6V7
; V1V2V4V8V5V3V6V7"

"题目14:已知如下图所示的一个图,若从顶点a出发,按广度优先搜索法进行遍历,则可能得到的一种顶点序列为(    )。

: aedfcb
; aebcfd
; abecdf
; aecbdf"

"题目15:图状结构中数据元素的位置之间存在(       )的关系。
: 多对多
; 一对一
; 一对多
; 每一个元素都有一个且只有一个直接前驱和一个直接后继"

"题目16:在一棵二叉树中,若编号为i的结点存在右孩子,则右孩子的顺序编号为(    )。
: 2i
; 2i+2
; 2i+1
; 2i-1"

"题目17:一棵具有16个结点的完全二叉树,共有(     )层。(设根结点在第一层)
: 4
; 5
; 6
; 7"

"题目18:对二叉排序树进行(      )遍历,可以使遍历所得到的序列是有序序列。
: 后序
; 按层次
; 中序
; 前序"

"题目19:已知一个图的边数为m,则该图的所有顶点的度数之和为(     )。
: 2m
; m/2
; m
; 2m+1"

题目20:一棵二叉树的叶结点(终端结点)数为5,单分支结点数为2,该树共有11个结点。

题目21:一棵有14个结点的完全二叉树,则它的最高层上有7个结点。

题目22:一棵二叉树有6个叶结点,则该树总共有11个结点。

题目23:根据搜索方法的不同,图的遍历有.先序;中序;后序三种方法。

题目24:对于一棵具有n个结点的二叉树,其相应的链式存储结构中共有n-1个指针域空。

题目25:    设一棵完全二叉树,其最高层上最右边的叶结点的编号为奇数,该叶结点的双亲结点的编号为10,该完全二叉树一共有21个结点。

题目26:    设一棵完全二叉树,其最高层上最右边的叶结点的编号为偶数,该叶结点的双亲结点的编号为9,该完全二叉树一共有19个结点。

题目27:按照二叉树的递归定义,对二叉树遍历的常用算法有深度优先遍历和深度优先遍两种方法。

题目28:一棵有8个权重值构造的哈夫曼数,共有17个结点。

题目29:一棵有7个叶结点的二叉树,其1度结点数的个数为2,则该树共有15个结点。

"题目30:    以下程序是后序遍历二叉树的递归算法的程序,完成程序中空格部分(树结构中左、右指针域分别为left和right,数据域data为字符型,BT指向根结点)。完成程序中空格部分。

void

Inorder (struct BTreeNode *BT)

{

if(  BT!=NULL)

{

Inorder(BT->left);

[[1]]

[[3]]

}

利用上述程序对左图进行后序遍历,结果是[[2]];

; [[1]] -> {Inorder(BT-> right ) / d,e,b,f,c,a / printf(“%c”,BT->data)}"

"题目31:    以下程序是中序遍历二叉树的递归算法的程序,完成程序中空格部分(树结构中左、右指针域分别为left和right,数据域data为字符型,BT指向根结点)。

void Inorder (struct BTreeNode *BT)

{

if(BT!=NULL){

Inorder(BT->left);}

[[2]];

[[3]];

}

利用上述程序对右图进行中序遍历,结果是[[1]];

; [[1]] -> {d,b,e,a,f,c / printf(“%c”,BT->data) / Inorder(BT->right)}"

"题目32:(1)以3,4,5,8,9,作为叶结点的权,构造一棵哈夫曼树。该树的带权路径长度为 {A; B; C; D}.

A,64       B.65       C. 62      D. 66

(2)权重为3的叶结点的哈夫曼编码为{A; B; C; D}。

A.010      B.0101      C.000      D.0111"

"题目33:(1)以2,3,4,7,8,9作为叶结点的权,构造一棵哈夫曼树,该树的带权路径长度为{A; B; C; D}

A,66       B. 80      C. 62       D. 87

(2)权重值为4的叶结点的哈夫曼编码为{A; B; C; D}。

A.0001     B. 1110    C.001    D. 110"

"题目34:(1)已知某二叉树的后序遍历序列是debca,中序遍历序列是dbeac,该二叉树的根结点是{A; B; C; D}

A. e       B. c       C. b       D. a

(2)先序遍历序列是{A; B; C; D}。

A. e,b,c,d,a          B. c,a,b,,d,e        C. a,b,d,e,c       D. a.c,b,d,e,"

"题目35:(1)已知某二叉树的先序遍历序列是aecdb,中序遍历序列是eadcb,该二叉树的根结点是{A; B; C; D};

A. e          B. c        C. b        D. a

(2)后序遍历序列为{A; B; C; D}。

A. e,d,b,c,a        B. c,a,b,,d,e      C. a,b,d,e,c      D. a.c,b,d,e,"

"题目36:(1)以给定权重值5,6,17,18,25,30,为叶结点,建立一棵哈夫曼树,该树的中序遍历序列为{A; B; C; D}

A. 5,11,28,6,17,58,30,101,18,43,25

B. 5,11,6,28,17,58,30,101,18,43,25

C. 5,11,6,28,101,58,30,17,18,43,25

D. 5,11,6,28,17,58,30,101,18,25,43

(2)权重值为6的叶结点的哈夫曼为{A; B; C; D}.

A. 1001      B. 011      C.001      D.0001"

答案地址

点击查看答案