浙大远程数据结构与算法模拟卷

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据结构与算法》模拟卷答案

一、判断题(共10小题,每小题1分,共10分,正确的打“√”,错误的打“×”。答案填写在答题表格中。)

×1、数据元素的逻辑结构相同时物理结构也应该相同。

√2、设n为正整数,则下列算法的时间复杂性是O(log2n)。

sum = 0; do sum += n; while(n=n/2);

√3、在n个元素的顺序表中的第i个元素之前插入一个元素,需要移动n-i+1个元素。

×4、线性表的特点是每个元素都有一个前驱和一个后继。

×5、循环队列不存在空间溢出问题。

√6、n(n>0)个结点的树有n-1条边。

√7、满二叉树一定是完全二叉树,反之不然。

√8、树可以看成是连通的图。

×9、5个顶点的无向图最多可能有20条边。

×10、二叉排序树主要用于对数据的排序。

二、单项选择题(共20小题,每小题2分,共40分。答案填写在答题表格中。)

1、数据结构是研究数据的( D )以及它们之间的相互关系。

A. 理想结构,物理结构

B. 理想结构,抽象结构

C. 物理结构,逻辑结构

D. 抽象结构,逻辑结构

2、计算机算法是指( D )。

A.计算方法

B.排序方法

C.调度方法

D.解决问题的有限运算序列

3、顺序表的特点是( B )。

A. 逻辑上相邻的结点其物理位置不相邻

B. 逻辑上相邻的结点其物理位置亦相邻

C. 顺序表不是随机存储结构

D. 在顺序表中插入和删除操作比在链表上方便

4、线性表按链式方式存储时,每个结点的存储包括( B )两部分。

A.数据值与符号

B.数据与指针

C.数据与表名

D.数据项与符号

5、带头结点的单循环链表Head为空表的判定条件是( A ) 。

A. Head->next == Head

B. Head->next == NULL

C. Head != NULL

D. Head == NULL

6、若某堆栈的输入序列为1,2,3,…,n-1,n,输出序列的第1个元素为n,则第i个输出元素为( A )。

A. n-i+l B.n-i C.i D.哪个元素都有可能

7、在具有n个单元顺序存储的循环队列中,队满时共有( A )个元素。

A. n-1

B. n

C. n+1

D. n+2

8、设二叉树根结点的高度为1,所有含有16个结点的二叉树中,最小高度是(C)。

A. 3

B. 4

C. 5

D. 6

9、有1438个结点的完全二叉树共有( B )个叶子结点。

A. 718

B. 719

C. 738

D. 不确定

10、已知某二叉树的前序遍历序列是cedba ,中序遍历序列是debac ,那么它的后序遍历序列的第三个字符是( B )。

A. a

B. b

C. c

D. d

11、具有5个顶点的有向完全图有(C )条弧。

A. 10

B. 12

C. 20

D. 25

12、关于图的邻接矩阵,下列结论( C )是正确的。

A. 有向图的邻接矩阵总是不对称的

B. 无向图的邻接矩阵总是不对称的

C. 有向图的邻接矩阵可以是对称的,也可以是不对称的

D. 无向图的邻接矩阵可以是不对称的,也可以是对称的

13、已知一个图(有6个顶点)的邻接矩阵如下,则从顶点V1出发按深度优先搜索法进行遍历,则可能得到的一种顶点序列为( D ) 。

⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣

⎡01

1

010*********

0110001001001010110

A. V1,V2,V3,V4,V5,V6

B. V1,V3,V5,V2,V4,V6

C. V1,V3,V5,V6,V4,V2

D. V1,V2,V4,V5,V6,V3 14、一个无向图的最小生成树的个数,( D )。

A. 一定有多棵

B. 一定只有一棵

C. 有一棵或多棵

D. 可能不存在

15、下图为AOV 网,其合法的拓扑序列个数有( B )个。

A. 1

B. 2

C. 3

D. 4

16、顺序查找法适用于查找顺序存储或链式存储的线性表,查找成功的平均比较次数为

( D )。( 在此假定N 为线性表中结点数,且查找每个元素的概率相同)· A. N+1 B. 2log 2N C. log 2N D. N/2

17、对包含N 个元素的散列表进行查找,平均查找长度为( C ) 。

A. O(log2N)

B. O(N)

C. 不直接依赖于N

D.上述三者都不是

18、构造一棵深度为4的A VL 树,至少需要( A )个结点。(假设只有一个结点的A VL

树深度为0)

A. 12

B. 11

C. 7

D. 20

19、在下列几种排序方法中,要求内存量最大的是( B )。·

A. 快速排序

B. 归并排序

C. 插入排序

D. 选择排序

20、设有1000个无序的元素,希望用最快的速度挑选出其中最大的一个元素,最好用( A )排序法。·

A. 起泡排序

B. 快速排序

C. 插入排序

D. 基数排序

三、填空题(每空 2 分,共10空,共20分)

1、设一个图G={V,A},V={a,b,c,d,e,f},A={,,,,,,}。那么顶点e的入度是 2 ;通过顶点f的简单回路有 2 条;就连通性而言,该图的强连通分量有 1 个。

2、已知一棵完全二叉树有156个叶子结点,从上到下、从左到右对它的结点进行编号,根结点为1号。则该完全二叉树总共至少有____311____个结点;第191号结点的双亲结点是__95_____号;第63号结点的左孩子结点是_____126____号。

3、满三叉树的第i层(i>=1)的结点个数为3i-1,深度为h时该树中共有(3h-1)/2 结点。

4、下列程序把十进制数转换为十六进制数,请填写合适的语句成分。

void conversion10_16( )

{ InitStack(&s);

scanf(“%d”,&N);

while(N){

push( s, N%16 ) ___ ;

N = N/16;

}

while(!StackEmpty(s)){

e = pop( s )______ ;

if(e<=9)printf(“%d”,e);

else printf(“%c”,e-10+’A’);

}

} /* conversion */

四、简答题(共4小题,共30分)

1、可以生成如下二叉排序树的关键字的初始排列有几种?请写出其中的任意3个。(7分)

解:30种。任写5个序列如下:

(5,4,7,6,2,3,1);

(5,7,4,6,2,3,1);

(5,4,7,2,3,1,6);

(5,7,6,4,2,3,1);

(5,7,6,4,2,1,3)

相关文档
最新文档