全国自考数据结构试题及答案解析doc.docx
- 文档编号:11839688
- 上传时间:2023-04-05
- 格式:DOCX
- 页数:10
- 大小:114.44KB
全国自考数据结构试题及答案解析doc.docx
《全国自考数据结构试题及答案解析doc.docx》由会员分享,可在线阅读,更多相关《全国自考数据结构试题及答案解析doc.docx(10页珍藏版)》请在冰豆网上搜索。
全国自考数据结构试题及答案解析doc
全国2018年10月高等教育自学考试数据结构试题课程代码:
02331
一、单项选择题(本大题共
15小题,每小题2分,共30分)
在每小题列出的四个备选项屮只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.数据结构是()
A.一种数据类型
B・数据的存储结构
C.一组性质相同的数据元素的集合
D・相互之间存在一种或多种特定关系的数据元素的集合
2.算法分析的目的是()
A.辨别数据结构的合理性
B•评价算法的效率
C.研究算法中输入与输出的关系
D.鉴别算法的可读性
3.在线性表的下列运算中,不.改变数据元素之间结构关系的运算是()
A•插入
B•删除
C.排序
D・定位
4.若进栈序列为1,
2,3,4,5,6,且进栈和出栈可以穿插进行,则可能出现的岀栈序列为()
A•3,2,6,1,4,5B・3,4,2,1,6,5
C.1,2,5,3,4,6D・5,6,4,2,3,1
5.设串st="DataStmciuxeswithJava",s2二"it",则了串定位函数hdexfcl,s2)的值为
()
A.15B・16
C.17D・18
6.二维数组A®]©]按行优先顺序存储,若数组元素A刃引的存储地址为1087,AE4JE7]的存储地址为1153,则数组
元素AB昭]的存储地址为()
B.1209
A•1207
D.1213
C.1211
7.在按层次遍历二叉树的算法中,需要借助的辅助数据结构是()
A•队列B・栈
C•线性表D.有序表
8.在任意一-棵二叉树的前序序列和后序序列中,各叶子之间的相对次序关系()
A•不一定相同B・都相同
C.都不相同D・互为逆序
9.若采用孩子兄弟链表作为树的存储结构,则树的后序遍历应采用二叉树的()
A•层次遍历算法B・前序遍历算法
C•中序遍历算法D・后序遍历算法
10.若用邻接矩阵表示一个有向图,则其屮每一列包含的"1"的个数为()
B・图中每个顶点的出度
D.图中连通分量的数目
)
A•图中每个顶点的入度
C.图中弧的条数
11.图的邻接矩阵表示法适用于表示(
A•无向图
C.稠密图
D•稀疏图
12.
i趟排序
在对n个关键字进行直接选择排序的过程中,每一趟都要从无序区选出最小关键字元素,则在进行第之前,无序区中关键字元素的个数为()
A.iB・Hl
C•n-iD.n-Hl
13.下列排序算法中,其时间复杂度和记录的初始排列无关的是()
A•插入排序B•堆排序
C•快速排序D・冒泡排序
14.若有序表的关键字序列为(b,c,d,e,€g,q,r,s,t),则在二分查找关键字b的过程屮,先后进行比较的关键字依次为
()
A•£c,bB.£d,b
C•g,c,bD•g,d,b
15.若在文件中查询年龄在60岁以上的男性及年龄在55岁以上的女性的所有记录,则查询条件为()
A.(性别二“男”)0R(年龄>60)0R(性别二“女”)0R(年龄>55)
B.(性别二“男”)0R(年龄>60)AND(性别二“女”)0R(年龄>55)
C.(性别二“男”)AND(年龄>60)0R(性别二“女”)AND(年龄>55)
D.(性别二“男”)AND(年龄>60)AND(性别二“女”)AND(年龄>55)
二、填空题(本大题共10小题,每小题2分,共20分)
请在每小题的空格屮填上正确答案。
错填、不填均无分。
16.称算法的时间复杂度为0眦n)),其含义是指算法的执行时间和的数量级相同。
17.在一个长度为n的单琏表L中,删除链表中即的前驱结点的时间复杂度为。
18.假设为循环队列分配的向量空间为Q眩0],若队列的长度和队头指针值分别为13和17,则当前尾指针的值为
19.设s二"IAMAATHLETE",匸"GOOD“,则执行下列串操作序列之后得到的subl为。
substr(subl,s,5,2);substr(sub2,s,6,8);strcpy
strcat(tl,sub2);strcat(subl,tl);
20.广义表的深度是指o
21.-棵含999个结点的完全二叉树的深度为o
22.含n个顶点的无向连通图中至少含有条边。
23.对表长为9000的索引顺序表进行分块查找,假设每一块的长度均为15,且以顺序查找确定块,则在各记录的
查找概率均相等的情况下,其查找成功的平均查找长度为o
24.若对关键字序列(43,02,80,48,26,57,15,73,21,24,66)进行一趟增量为3的希尔排序,则得到的结
果为o
25.EAM文件由主索引、、和主文件组成。
三、解答题(本大题共4小题,每小题5分,共20分)
26.某广义表的表头和表尾均为(a,(b,c)),画出该广义表的图形表示。
27.已知二叉树的先序序列和屮序序列分别为HDACBGFE和ADCBHFEG。
(1)画出该二叉树;
(2)画出与
(1)求得的二叉树对应的森林。
(1)
(2)
28.已知带权图的邻接表如下所示,其屮边表结点的结构为:
2
3
依此邻接表从顶点C出发进行深度优先遍历。
(1)画出由此得到的深度优先生成树;
(2)写出遍历过程屮得到的从顶点C到其它各顶点的带权路径及其长度。
(1)
(2)
29.从空树起,依次插入关键字37,50,42,18,48,12,56,30,23,构造一棵二叉排序树。
(1)画出该二叉排序树;
(2)画出从
(1)所得树中删除关键字为37的结点之后的二叉排序树。
(1)
(2)
四、算法阅读题(本大题共4小题,每小题5分,共20分)
30.已知用有序链表存储整数集合的元素。
阅读算法C0,并回答下列问题:
(1)写出执行CO(a,b)的返回值,其中a和b分别为指向存储集合{2,4,5,7,9,12}和{2,4,5,7,9}的链
表的头指针;
(2)简述算法£30的功能;
(3)写出算法£30的时间复杂度。
htCO(LinkListha’LinkListhb)
{
ZthkList是带有头结点的单链表
Zha和hb分别为指向存储两个有序整数集合的链表的头指针
LhkListpa,pb;
pa=ha->next;
pb=hb^>next;
while(pa&&pb&&二二pbTdata)
{pa=pa^>next;
pb=pb~>next;
}
盼二二NULL&&pb二二NULL)etum1;
elsexetiiin0;
}
(1)
⑵
(3)
31.已知稀疏矩阵采用带行表的三元组表表示,其形式说明如下:
#defeeMaxRow100佈疏矩阵的最大行数
lypedefstrnct{
iitijv;亍号、列号、元素值
}TriTup]eNode;
typedefstmct{
TriTupleNodedata|MaxSize];
iitRowTab[MaxRow+1上亍表
htm,n,t;力矩阵的行数、列数和非零元个数
}RTriTupleTable;
建立稀疏矩阵的带行
(注:
矩阵的行、列下标均从1
&RH>data[U.v);
下列算法伐1的功能是,以行优先的顺序输入稀疏矩阵的非零元(行号、列号、元素值)
表的三元组表存储结构。
请在空缺处填入合适内容,使其成为一个完整的算法。
起计)
voidCl(RTriTupleTabh*R)
{htik;
scanf(/z%d%d%d,&R^>m,&R->n,&R->t);
R->RowTab[l]=0;
k二1;加指示当前输入的非零元的行号
for(F0:
①;H+)
{scanf("%d%d%d",©,(3),
while(k
{®:
R->RowTab[k]=i;
}
}
}
①
②
③
④
32.已知二叉树的存储结构为二叉链表,其类型定义如下:
iypedefstmctNodeType{
DataTypedata;
structNodeType^hhikij^rchiJd;
}BhTNode,桩hTxee;
阅读算法F32,并回答下列问题:
(1)对于如图所示的二叉树,画岀执行算法仍2的结果;
(2)简述算法62的功能。
BhTieeC2(BhTieebtl)
{
BinTieebl2;
if(btl二二NULL)
bt2二NULL;
else{
bt2=(BhTNode*)malloc(sizeof®hTNode));
b12->data二btlTdata;
bt2->rchiJd=f32(btl->]child);
bl2->Jchild=C2(btl->rchi]d);
}
rctumbi2;
}
(1)
⑵
33.假设有向图采用邻接表表示法,其定义如下:
lypedefstmct{
VertexNodeadjlistlNlaxVertexNum];
titn,e;〃图的当前顶点数和弧数
}ALGmph;於B接表类型
其屮顶点表结点
VertexNode结构为:
vertex
firstedge
adj/exne
xt
边表结点EdgeNode结构为:
下列算法伐3的功能是,对以邻接表表示的有向图进行拓扑排序。
(1)阅读算法伐3,并在空缺处填入
合适的内容,使其成为一个完整的算法;
(2)对于如图所示的邻接表,将执行算法伐3后的topo[]结果填入给定的数组中。
voidS3(ALGxaphG,tittopo[]){
intijk,countF0;
tithdegieeIMaxVertexNum];
EdgeNode即;
h为指向边表结点的指针
QueueQ;
加为队列
Fhdlndegrce(&,hdegrce);你各顶点的入度,并置于入度向量hdegree
hiiQueue&Q);
for(i=O;i if(! indegieeEDEnQueue&Q while(! QueueEmply&Q)){ j=®; topoy=++count; for(p=G.adjlisPledgepp二^>next){ k=p~>adj/ex; if(! (—ridegiee[k]))® } } if(count } (1)① 01234567 ② (2)topo 五、算法设计题(本大题10分) 34.假设以带头结点的单链表表示有序表,单链表的类型定义如下: typedefstmctnode{ DataTypedata; stmctnode^ext }LhkNode,*LhkList; 编写算法,从有序表A中删除所有和有序表B屮元素相同的结点。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全国 自考 数据结构 试题 答案 解析 doc