欢迎来到四川自考网,今天是2020年8月21日

自考资讯热线:028-65656189

距离自考还有28

当前位置:首页 > 自学考试 > 历年试题 > 理工类专业 >

全国2012年10月自考数据结构导论试题

发布时间:2012-11-21 15:14:23

全国2012年10月高等教育自学考试
数据结构导论试题
课程代码:02142


请考生按规定用笔将所有试题的答案涂、写在答题纸上。
选择题部分
注意事项:
1. 答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。
2. 每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。如需改动,用橡皮擦干净后,再选涂其他答案标号。不能答在试题卷上。

一、单项选择题(本大题共15小题,每小题2分,共30分)
在每小题列出的四个备选项中只有一个是符合题目要求的。错选、多选或未选均无分。
1.下面几种算法时间复杂度阶数中,值最大的是
A.O(nlog2n)  B.O(n2)
C.O(n)  D.O(2n)
2.即使输入非法数据,算法也能适当地做出反应或进行处理,不会产生预料不到的运行结果,这种算法好坏的评价因素称为
A.正确性  B.易读性
C.健壮性  D.时空性
3.设顺序表的长度为100,则在第40个元素之后插入一个元素所需移动元素的个数为
A.40  B.60
C.61  D.100
4.设带头结点的单循环链表的头指针为head,则判断该链表是否为空的条件是
A. head->next==head  B. head->next==NULL
C. head!=NULL  D. head==NULL
5.在链栈的运算中,不需要判断栈是否为空的是
A.出栈  B.进栈
C.取栈顶元素  D.求链栈的元素个数
6.一个队列的输入序列是A,B,C,D,则该队列的输出序列是
A.A,B,C,D  B.B,C,D,A
C.D,C,B,A  D.C,D,B,A
7.以行序为主序的二维数组a[3][5]中,第一个元素a[0][0]的存储地址是100,每个元素占2个存储单元,则a[1][2]的存储地址是
A.100  B.108
C.114  D.116
8.对任何一棵二叉树T,若叶结点数为5个,则度为2的结点个数为
A.4  B.5
C.6  D.无法确定
9.m个叶结点的哈夫曼树中,其结点总数为
A.m  B.2m+1
C.2m  D.2m-1
10.二叉树的中序遍历序列中,结点P排在结点Q之前的条件是
A.在二叉树中P在Q的左边  B.在二叉树中P在Q的右边
C.在二叉树中P是Q的祖先  D.在二叉树中P是Q的子孙
11.有10个顶点的无向完全图的边数是
A.11  B.45
C.55  D.90
12.在带权有向图中求两个结点之间的最短路径可以采用的算法是
A.迪杰斯特拉(Dijkstra)算法  B.克鲁斯卡尔(Kruskal)算法
C.普里姆(Prim)算法  D.深度优先搜索(DFS)算法
13.二分查找(Binary Search)算法的时间复杂度是
A.O(n2)  B.O(nlog2n)
C.O(n)  D.O(log2n)
14.在一棵初始时为空的二叉树中,依次插入键值序列50,72,43,85,75,20,38,45,65,60,构造对应的二叉排序树以后,查找元素60要进行的比较次数是
A.2  B.3
C.4  D.5
15.快速排序属于
A.插入排序  B.交换排序
C.选择排序  D.归并排序

非选择题部分
注意事项:
用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。

二、填空题(本大题共13小题,每小题2分,共26分)
16.下面算法程序段的时间复杂度为______。
for (i=1; i<=n; i++)
for (j=1; j<=n; j++)
for (k=1;k<=n;k++)
x++;
17.所有存储结点存放在一个连续的存储区里,利用结点在存储器中的相对位置来表示数据元素之间的逻辑关系。这种存储方式是______。
18.单链表中指针p指向结点A,若要删除A之后的结点(存在且不释放存储空间),则需要修改指针的操作为p->next=______。
19.在带有头结点的单链表head中,首结点的指针为______。
20.在栈结构中,允许插入和删除的一端称为______。
21.C程序中,将对称矩阵A[n][n]的下三角元素压缩存储到n(n+1)/2个元素的一维数组M中,设a[i][j](i≥j)存放在数组M[k]中,则k的值(用i,j表示)为______。
22.具有64个结点的完全二叉树的深度为______。
23.某二叉树的先序遍历序列为AJKLMNO,中序遍历序列为JLKANMO,则根结点A的右子树中的结点个数为______。
24.三个顶点v1,v2,v3的图的邻接矩阵为 ,则该图中顶点v2的出度为______。
25.除第一个顶点和最后一个顶点相同外,其余顶点不重复的回路,称为______。
26.在顺序查找、二分查找、散列查找和索引顺序查找四种查找方法中,平均查找长度与元素个数没有关系的查找方法是______。
27.堆排序算法的时间复杂度为______。
28.如果要将序列{60,18,28,69,99,75,78}建成堆,则只需把60与______相互交换。
三、应用题(本大题共5小题,每小题6分,共30分)
29.如题29图所示,在栈的输入端依次输入元素A,B,C,试写出在栈的输出端可以得到的所有输出序列,并给出每个序列的操作过程(用push(A)表示A进栈,pop(A)表示A出栈)。
  

33.设散列函数H(key)=key mod 11(mod表示求余运算),给出键值序列为66,13,41,15,44,6,68,17,26,31,39,46,用链地址法解决冲突,试画出相应的散列表,并计算在等概率情况下查找成功时的平均查找长度。
四、算法设计题(本大题共2小题,每小题7分,共14分)
34. 带头结点的单链表的结点结构如下:
typedef struct node
{ int data;
struct node *next;
}Node,*LinkList;
试编写单链表的删除运算算法void DeleteLinklist( LinkList head,int i)
35.写出直接选择排序算法。