淮阴工学院数据结构期末试卷及答案(1)

发布时间:2011-09-16 22:37:57   来源:文档文库   
字号:

07 - 08 学年 2 学期 数据结构试卷A( 闭卷)

题号

得分

一、选择题本大题共15小题,每题2分,共30分;答案填在下表内)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

1.从一个长度为100的顺序表中删除第30个元素时需向前移动 A 个元素

A70 B71 C69 D30

2.在一个具有N个单元的顺序表中,假定以地址低端(即下标为1的单元)作为底,top作为顶指针,则当做进栈处理时top变化为_D_

A top不变 Btop=0 Ctop=top-1 Dtop=top+1

3.从一个具有n个结点的单链表中查找其值等于x结点时,在查找成功情况下,则平均比较_D___个结点。

An Bn/2 C(n-1)/2 D(n+1)/2

4.在一个单链表中,若要删除p指针所指结点的后继结点,则执行B

Ap-> next; p-> next=p-> next-> next;

Bp-> next=p-> next-> next;

Cp=p-> next;

Dp=p-> next->>next;

5.在一个链队列中,假定frontrear分别为队首和队后指针,则进行插入S结点的操作时应执行C _

Afront-> next=s front=s

Bs-> next=rear; rear=s

Crear-> next=s; rear=s

Ds-> next=front; front=s

6.在一棵度为3的树中度为3的结点数为3,度为2的结点数为1,度为1的结点数为1,那么度为0的结点数为_C_

A6 B7 C 8=3+2+1+1 D9

7.假定一棵二叉树的结点数为33,则它的最小高度为_C_,最大高度为_C__

A 4,33 B5,33 C6,33 D6,32

8. 在一棵完全二叉树,若编号为i的结点有右孩子,则该结点的孩子编号为_B__

A2i B2i+1 C2i-1 Di/2

9.在一个有向图中,所有顶点的入度之和等于所有弧数和__A_倍。

A1 B2 C3 D4

10.对于一个具有N个顶点的图,若用邻接矩阵表示,则该矩阵的大小为__D_

A N B(N-1)2 C(N+1)2 D N2

11.已知一个图如图所示,在该图的最小生成树中各边上数值之和为__B__

A21 B26 C28 D33

12.已知一个图如图所示,由该图行到的一种拓朴序列 A

Av1 v4 v6 v2 v5 v3

Bv1 v2 v3 v4 v5 v6

Cv1 v4 v2 v3 v6 v5

Dv1 v2 v4 v6 v3 v5

13.二维数组M的元素是4个字符(每个字符占一个存储单元)组成的串,行下标i的范围从04,列下标j的范围从05M按行存储时元素M[2][4]的起始地址与M按列存储时元素 D 的起始地址相同。

Am[2][4] BM[4][2] CM[3][1] DM[3][1]

14.具有6个结点的无向图至少应有 A 条边才能保证是连通图。

A 5 B 6 C 7 D 8

15.采用邻接表存储的图的深度优先遍历类似于二叉树的 A

A 先序遍历B中序遍历 C. 后序遍历 D. 按层遍历

二、填空题(本大题共5小题,每空1分,共8分;答案填在下表内)

1

2

3

4

5

6

7

8

1.数据结构是研究数据元素之间抽象化的相互关系和这种关系在计算机中的存储结构表示,根据数据元素之间关系的不同特性,通常有下列四类基本结构:集合、线性结构、树型结构 图型结构

2.评价算法的标准很多,通常是以执行算法所需要的 时间 和所占用的 空间 来判别一个算法的优劣。

3.线性表的顺序存储结构特点是表中逻辑关系相邻的元素在机器内的位置 也是相邻的。

4.空格串的长度为串中所包含 空格 字符的个数,空串的长度为

5.加上表示指向前驱和 后继 的线索的二叉数称为线索二叉树

三、判断题(对的打“√”,错的打“×”。每小题1分,共10分)

× 1.线性表的唯一存储形式是链表。

2.已知指针P指向键表L中的某结点,执行语句P=P-next不会删除该链表中的结点。

3.在链队列中,即使不设置尾指针也能进行入队操作。

×4.如果一个串中的所有字符均在另一串中出现,则说前者是后者的子串。

×5.设与一棵树T所对应的二叉树为BT,则与T中的叶子结点所对应的BT中的结点也一定是叶子结点。

6.快速排序是不稳定排序

×7.任一AOE网中至少有一条关键路径,且是从源点到汇点的路径中最短的一条。

×8.若图G的最小生成树不唯一,则G的边数一定多于n-1,并且权值最小的边有多条(其中nG的顶点数)。

× 9.给出不同的输入序列建造二叉排序树,一定得到不同的二叉排序树。

× 10.基数排序是多关键字排序。从最低位关键字起进行排序。

四、应用题。(共44分)

1.画出该图的邻接矩阵和邻接表。根据邻接表从A开始求DFSBFS序列。12分)

(图未显示)

011000

101000

100001

010010

000101

001010

2

1

0

 

A

3

0

1

 

B

0

2

0

C

5

1

3

D

4

3

5

4

E

2

4

5

F

DFS序列:ABDEFC

BFS序列:ABCDFE

2.假设用于通信的电子由字符集{a,b,c,d,e,f,g,h}中的字母构成,这8个字母在电文中出现的概率分别为{0.070.190.020.060.320.030.210.10}画出哈夫曼树,并为这8个字母设计哈夫曼编码。(8分)

7

19

2

6

32

3

21

10

0010

10

00000

0001

01

00001

11

011

3. 已知序列{707369239318,1168}请给出直接插入排序作升序排序每一趟的结果和快速排序作升序排序时一趟的结果。10分)

直接插入排序

707369239318,1168

[7073]69239318,1168

[706973] 239318,1168

[23,706973] 9318,1168

[23,706973 93]18,1168

[18,23,706973 93] 1168

[1118,23,706973 93] 68

[1118,23,68,706973 93]

快速排序

[68,11,69,23,18] ,70,[93,73]

4.设有一组关键字关键码集为 {477291116922283},哈希表表长为11 Hash(key)=key mod 11,用线性探测法处理冲突,构造哈希表,并求它成功查找的ASL8分)

0 1 2 3 4 5 6 7 8 9 10

11

22

47

92

16

3

7

29

8

ASL=5/3

5. 二叉树的先序遍历序列为 A B C D E F G H I,中序遍历序列为 B C A E D G H F I,画出这棵二叉树。(6)

解:

五、算法设计题(8分)

定义有序表抽象数据类型,并据此类型设计折半查找算法。

typedef struct

{ int key;

float info;

}JD;

int binsrch(JD r[],int n,int k)

{ int low,high,mid,found;

low=1; high=n; found=0;

while((low<=high)&&(found==0))

{ mid=(low+high)/2;

if(k>r[mid].key) low=mid+1;

else if(k==r[mid].key) found=1;

else high=mid-1;

}

if(found==1)

return(mid);

else

return(0);

}

本文来源:https://www.2haoxitong.net/k/doc/87acdde9551810a6f52486a3.html

《淮阴工学院数据结构期末试卷及答案(1).doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式