浙大城院数据结构期末模拟2.doc

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

模拟 2

得分一.选择题(本大题共15 题,每题 1 分,共15 分 )

1.数据在计算机内存中的表示是指

A. 数据的存储结构

C. 数据的逻辑结构

B. 数据结构

D. 数据元素之间的关系

2. 对线性表,在下列情况下应当采用链表表示的是

A. 经常需要随机地存取元素

B. 经常需要进行插入和删除操作

C. 表中元素需要占据一片连续的存储空间

D. 表中的元素个数不变

3.与单链表相比,双链表的优点之一是

A.插入、删除操作更加简单。

B.可随机访问。

C.可以省略表头指针或表尾指针

D.访问前驱结点更加方便

4.如果最常用的操作是取第i 个结点及前驱,则采用

A.顺序表B.双链表

存储方式最节省时间。

C.单循环链表D.单链表

5.可以用带表头附加结点的链表表示线性表,也可以用不带表头附加结点的链表表示线性表,前者最主要的好处是。

A.可以加快对表的遍历

C.节省存储空间

6. 一个队列的入队序列是1,2,3,4,

B. 使空表和非空表的处理统一

D. 可以提高存取表元素的速度则队列的输出序列是。

A. 4,3,2,1

B. 1,2,3,4

C. 1,4,3,2

D. 3,2,4,1

7.栈和队列的共同点是。

A.都是先进先出B.都是先进后出

C.属于非线性结构D.只允许在端点处插入和删除元素8.以下不是栈的基本运算的是。

A.删除栈顶元素C.判断栈是否为空B. 删除栈底元素D. 将栈置为空栈

9.一个递归的定义可以用递归过程求解,也可以用非递归过程求解,若从运行时间来看,通常__________ 。

A.非递归算法比递归算法快B.非递归算法比递归算法慢

10.

C.非递归算法与递归算法时间一样D.非递归算法与递归算法时间不一定在一个非空二叉数的中序遍历序列中,根结点的右边。

A. 只有右子树上的所有结点

B.只有右子树上的部分结点

C. 只有左子树上的部分结点

D.只有左子树上的所有结点

11. 有关树和二叉树的叙述错误的有。

A. 树中的最大度数没有限制,而二叉树结点的最大度数为2;

B.树的结点无左右之分,而二叉树的结点有左右之分;

C.树的每个结点的孩子数为 0 到多个 , 而二叉树每个结点均有两个孩子;

D.树和二叉树均为树形结构。

12.深度为 k 的完全二叉树至少有个结点,至多有个结点。

A. (2k-1, 2k-1)

B. (2k-1, 2k)

C. (2k-1, 2k)

D. (2k-1-1, 2k-1)

13. 具有 4 个顶点的无向完全图,有条边。

A. 3

B. 6

C. 12

D. 16

14.一个具有 n 个顶点的无向图,要确保是一个连通图,至少需要条边。

A. n-1

B. n

C. n+1

D. n/2

15.在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的倍。

A. 4

B. 2

C. 1

D. 1/2

得分二.填空题(本大题共10 个空,每个空 2 分,共20 分)

1. 数据的逻辑结构被分为集合、、、图形结构四种。

2. 数据的存储结构主要分为和两种。

3.不同形式的时间复杂度 O(logn) 、 O(nlogn) 、 O(n)、O(n2)、 O(2n),随着 n 的增长,其增长速度

关系为(按从小到大排列)。

4.在单链表中,要删除某一指定的结点,必须找到该结点的。

5. 在一个长度为 n 的顺序表中删除表中的第i 个元素( 0≤ i ≤ n-1)时,需向前移动元

素。

6. 已知某无向图的二元组表示为DS=(K, R), K={a, b, c, d, e} , R={r} ,

r={(a,b),(a,c),(a,d),(b,e),(d,e),(c,d),} ,则顶点 b 的度为。

7. 已知一棵树用广义表表示为a(b, c(d(e(f), g, h), i), j),则此树的度为,深度

为。

得分三.解答题 ( 本大题共 3 题,每题 6 分,共 18 分 )

3a*b4/- 的操作步骤。例如 : ABC 变BCA,1.设有字符串3*a-b/ 4 ,试利用栈写出将此次序改变为

操作步骤为Push; Push; Pop; Push; Pop; Pop。

2.已知一棵二叉树的中序遍历序列是 abcdjefhgi ,前序遍历序列是 eadcbjfghi,请画出这棵二叉树,并

写出这棵二叉树的后序遍历序列。

3. 设有向图 G=(V,E), V={V1,V2,V3,V4,V5,V6}, G 的邻接矩阵如下:

0 1 1 0 0 0

0 0 0 0 1 1

0 0 0 1 0 0

1 0 0 0 0 0

0 0 0 0 0 0

0 0 0 1 1 0

①请画出图G 的强连通分量 ;

② 请根据邻接矩阵存储结构有向图的广度优先遍历算法,写出从顶点V1 出发所得到的顶点序列。

得分四.程序阅读题(本大题共 2 题,每题 5 分,共10 分)

1. 设 head 为非递减有序的单链表的头指针,单链表中各结点的值依次为( 2, 3, 3, 3, 4, 7, 8, 8, 9,

10,10) ,阅读下列算法,写出运行该算法后单链表中各结点的值。

void fun1(LNode* &head )

{

LNode *p=head, *q;

while ( p != NULL && p-> next != NULL ) {

if ( p->data == p->next->data) {

q = p->next;

p->next = q->next;

free(q);

}

else p = p->next;

}

}

2.阅读下列程序,说明该算法的功能。

ElemType fun2(Queue q)

{

ElemType x;

Queue temp;

InitQueue(temp);

while (!QueueEmpty(q)) {

x=OutQueue(q);

EnQueue(temp, x);

}

while (!QueueEmpty(temp)) {

x=OutQueue(temp);

EnQueue(q, x);

}

return x;

}

相关文档
最新文档