2008-2009-1数据结构期末考卷(信管)

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

诚信应考 考出水平 考出风格 浙江大学城市学院 2008 — 2009 学年第 一 学期期末考试试卷 《 数据结构基础 》 开课单位: 计算分院 ;考试形式:闭卷;考试时间: 2009 年 1 月 8 日; 所需时间: 120 分钟

一.选择题 (本大题共 15 题,每题 1 分,共 15 分) 1.数据在计算机内存中的表示是指 。 A. 数据的存储结构 B. 数据结构 C. 数据的逻辑结构 D. 数据元素之间的关系 2. 对线性表,在下列情况下应当采用链表表示的是 。 A. 经常需要随机地存取元素 B. 经常需要进行插入和删除操作 C. 表中元素需要占据一片连续的存储空间 D. 表中的元素个数不变 3.与单链表相比,双链表的优点之一是 。 A .插入、删除操作更加简单。 B .可随机访问。 C .可以省略表头指针或表尾指针

D .访问前驱结点更加方便 4.如果最常用的操作是取第i 个结点及前驱,则采用 存储方式最节省时间。 A .顺序表 B .双链表 C .单循环链表 D .单链表 5.可以用带表头附加结点的链表表示线性表,也可以用不带表头附加结点的链表表示线性表,前者最主要的好处是 。

A.可以加快对表的遍历 B. 使空表和非空表的处理统一

C.节省存储空间 D. 可以提高存取表元素的速度

6. 一个队列的入队序列是1,2,3,4, 则队列的输出序列是。

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.删除栈顶元素 B. 删除栈底元素

C.判断栈是否为空D. 将栈置为空栈

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

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

C.非递归算法与递归算法时间一样D.非递归算法与递归算法时间不一定

10. 在一个非空二叉数的中序遍历序列中,根结点的右边。

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 分)

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

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 分)

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

}

}

相关文档
最新文档