黄老师 发表于 2013-8-10 11:25:42

大工13春《数据结构》模拟试卷A答案

机密★启用前
大连理工大学网络教育学院
2013年9月份《数据结构》课程考试
模 拟 试 卷
考试形式:闭卷         试卷类型:(A)
☆ 注意事项: 1、本考卷满分共:100分;考试时间:90分钟。
2、所有试题必须答到试卷答题纸上,答到试卷上无效。
3、考试结束后,考生须将试卷和试卷答题纸一并交回。
学习中心______________   姓名____________   学号____________
一、单项选择题(本大题共10小题,每小题3分,共30分)
1、在表长为n的顺序表中,若在每个位置插入数据元素的概率相等,插入一个数据元素平均需要移动(   )个数据元素。

A.(n-1)/2
B.n/2

C.n-1
D.n

2、线性表采用顺序存储结构时,其地址(   )。
A.必须是连续的
B.部分地址必须是连续的

C.一定是不连续的
D.连续与否均可以

3、队列操作的原则是(   )。

A.先进先出
B.后进先出

C.只能插入
D.只能删除

4、一个顺序栈S,元素a,b,c,d,e依次进栈,如果5个元素的出栈顺序为b,e,d,c,a,则顺序栈的容量至少应为(   )。

A.2
B.3

C.4
D.5

5、广义表((e))的表头是(   )。

A.e
B.(e)

C.( )
D.((e))

6、按照二叉树的定义,具有3个结点二叉树有(   )种不同形态。

A.3
B.4

C.5
D.6

7、一棵二叉树的结点个数为60,则它的最小高度为(   )。

A.5
B.6

C.7
D.8

8、具有6个顶点9条边的有向图中,所有顶点的出度之和等于(   )。

A.6
B.9

C.12
D.18

9、具有10个顶点的简单无向图最多可包含(   )条边。

A.7
B.8

C.45
D.90

10、对数据元素按从小到大次序进行排序。如果待排序的数据元素的初始状态是按从小到大次序排列,用下列(   )方法进行排序速度最慢。

A.快速排序
B.堆排序

C.直接插入排序
D.起泡排序


二、判断题(本大题共10小题,每小题3分,共30分)
1、算法分析的两个主要方面为空间复杂度和时间复杂度。(   )

A.正确
B.错误

2、顺序表的长度是表中的数据元素个数。(   )

A.正确
B.错误

3、在栈中,出栈操作的时间复杂度为O(n)。(   )

A.正确
B.错误

4、栈和队列的共同特点是先进先出。(   )

A.正确
B.错误

5、中缀表达式A-(B+C/D)*E的后缀形式是ABCD/+E*-。(   )

A.正确
B.错误

6、具有5个顶点的无向图至少应有4条边才能确保是一个连通图。(   )

A.正确
B.错误

7、在一个具有n个顶点和e条边的无向图的邻接表中,边结点的个数为2e。(   )

A.正确
B.错误

8、difference(A,B,C)表示求集合A和B的差集C。(   )

A.正确
B.错误

9、快速排序是稳定的排序方法。(   )

A.正确
B.错误

10、堆是完全二叉树。(   )

A.正确
B.错误


三、填空题(本大题共5个空,每空3分,共15分)
1、用顺序存储结构存放的线性表称做         。
2、对于顺序存储的栈,因为栈的空间是有限的,在进行         运算时,可能发生上溢出。
3、n个顶点的有向完全图具有         条弧。
4、在树结构里,有且仅有一个结点没有前驱,称为         。
5、若将8阶下三角矩阵A中下三角元素按行优先顺序压缩存储于一维数组sa中,则m等于         。
四、简答题(本大题共3小题,每小题5分,共15分)
1、写出下图所示二叉树的前序、中序及后序遍历序列。

2、下面列举的是常用的排序方法:直接插入排序、二分插入排序、希尔排序、起泡排序、快速排序、直接选择排序、堆排序、二路归并排序。试问哪些排序方法是稳定的?哪种排序占用的辅助空间最大?
3、若串s="software",其子串的数目是多少?给出分析计算过程。
五、算法题(本大题1小题,共10分)
1、已知二叉树中的结点类型用BtreeNode表示,被定义为:
struct BtreeNode
{
char data;
struct BtreeNode *left;
struct BtreeNode *right;
};
其中data为结点值域,left和right分别为指向左、右孩子结点的指针域,根据下面函数声明编写求一棵二叉树高度的算法,该高度由函数返回。假定根结点的层次为1,参数BT初始指向这棵二叉树的根结点。int BTreeDepth(BtreeNode *BT);
机密★启用前
大连理工大学网络教育学院
2013年9月份《数据结构》课程考试 模拟试卷答案
考试形式:闭卷               试卷类型:A

一、单项选择题(本大题共10小题,每小题3分,共30分)
1、B   2、A   3、A   4、C   5、B   
6、C   7、B   8、B   9、C   10、A
二、判断题(本大题共10小题,每小题3分,共30分)
1、A      2、A      3、B      4、B      5、A      
6、A      7、A      8、A      9、B      10、A   
三、填空题(本大题共5个空,每空3分,共15分)
1、顺序表      2、进栈      3、n*(n-1)      4、根      5、36
四、简答题(本大题共3小题,每小题5分,共15分)
1、答:
该二叉树的前序序列为:CABEFDHG(2分)
该二叉树的中序序列为:BAFECHDG(2分)
该二叉树的后序序列为:BFEAHGDC(1分)
2、答:
稳定的排序方法有:直接插入排序、二分插入排序、起泡排序、二路归并排序。(3分)
占用辅助空间最大的排序是:二路归并排序。(2分)
3、答:分析计算过程:
串s中共有8个字符,一个字符的子串有8个,两个字符的子串有7个,三个字符的子串有6个,四个字符的子串有5个,五个字符的子串有4个,六个字符的子串有3个,七个字符的子串有2个,八个字符的子串有1个,另有一个空串(4分)。因此,子串的数目为: 8+7+6+5+4+3+2+1+1=37(1分)
五、算法题(本大题1小题,共10分)
1、(程序中变量名称定义,及实现过程可能不统一,请酌情给分。)
int BTreeDepth(BtreeNode *BT)//求由BT指针指向一棵二叉树的高度
{
if(BT == Null)
return 0;//对于空树返回高度为0   
else
{
int dep1=BTreeDepth(BT->left);   //计算左子树的高度
int dep2=BTreeDepth(BT->right);//计算右子树的高度
if(dep1>dep2)
return dep1+1;
else
return dep2+1;
}
}

页: [1]
查看完整版本: 大工13春《数据结构》模拟试卷A答案