2005数据结构 联系客服

发布时间 : 星期四 文章2005数据结构更新完毕开始阅读b6f05ad97f1922791688e8e9

中南大学考试试卷

2005 -- 2005 学年 下 学期 时间110分钟

数据结构 课程 48 学时 3 学分 考试形式: 闭 卷

专业年级: 信科03级,应数03级 总分100分,占总评成绩 %

注:此页不作答题纸,请将答案写在答题纸上

一、 单选题:(每题2 分,共 14 分)

1. 带头结点的单链表H1中,要向其表头插入一个由指针p指向的结点,则执行( )。 A. H1=p; p->next=H1; B. p->next=H1; H1=p;

C. p->next=H1; p=H1; D. p->next=H1->next; H1->next=p.

2. 如果有四列火车车厢(编号分别为1,2,3,4),其进站的方式相当于栈,假设它们按1,2,3,4的序列进站(例:可以1进去后马上出来),则它们出站的序列不可能是( ) A. 1234 B. 4321 C. 4312 D. 3214

3. 串是任意有限个( )

A.符号构成的序列 B.符号构成的集合 C.字符构成的序列 D.字符构成的集合 4. 设矩阵A(aij ,l≤I,j≤ 10)的元素满足:aij≠0(i≥j, l≤I, j≤ 10)

aij=0(I

A.2340 B.2336 C.2164 D.2160

5. 二分查找要求被查找的表是( )

A.键值有序的链接表 B链接表但键值不一定有序 C.键值有序的顺序表 D.顺序表但键值不一定有序

6. 三个结点可构成( )个不同形态的二叉树。

A.2 B.3 C.4 D.5

7. 栈操作的原则是( )

A.先进先出 B.后进先出 C.栈顶插入 D.栈顶删除

二、填空题 (每空3分,共 15分。)

1.如图(图三)所示的二叉树的先序遍历序列是 。

2.已知一棵度为m的树有n1个度为1的结点,n2个度为2的结点,... ,nm个度为m的结点,则树中有 个叶子结点。

3. 在一个循环顺序队列Q中,判断队空的条件为 ,判断队满的条件为 。 4. 将中缀算术表达式(2+3)*2.5-(7.3/5+6)转化为后缀表达式是 。

三、应用题(共45分)

1. 已知线性表为(18,19,,21,16,15,17,20)。按数据元素在表中的次序构造一棵平衡

二叉排序树:要求画出平衡二叉排序树的构造过程。 2.已知某系统在通信联络中会出现七种字符,其概率分别为0.05, 0.10, 0.30, 0.25, 0.03, 0.11, 0.16,试设计赫夫曼编码。要求:图示每一步的生成过程。

1

3. 如图(图一)为一带权有向网

a) 简述FLOYD算法求有向图的各对顶点之间的最短路径的基本思想。

b) 写出利用FLOYD算法求图一各对顶点之间的最短路径时在执行算法过程中所得到

的最短路径长度矩阵序列和最短路径矩阵序列

4. 有一组键值49,38,65,97,76,13,27,49,采用快速排序方法由小到大进行排序,请写出每趟的结果,并标明在第一趟排序过程中键值的移动情况。

5.对下图(图二)所示的AOE网,求出各项活动的最早开始时间e(i)和最晚开始时间l(i),并回答:工程完成的最短时间是多少?哪些活动是关键活动?是否有某些活动提高速度后能导致整个工厂缩短工期? A4=3 6 5 A8=1 2 A A1=3 8 B 13 A3=2 4 A7=2 16 5 4 A5=4 A2=2 C A6=3 3 (图一) (图二) 四、阅读程序说明程序执行的功能并写出对下图(图三)的输出结果。(6分)

typedef struct BiTNode{

A int data;

struct BiTNode *lchild,*rchild; }BiTNode,*BiTree;

B C

int preprn(BiTtree T)

{if((T->lchild!=NULL)&&(T->rchild!=NULL))

E F { printf(T->data); D preprn(T->lchild); preprn(T->rchild);

G H }

else return OK;

} (图三)

五、算法和程序设计(共20分)

1. 一个单链表,其结点在元素值以非递减有序排列,编写一个函数删除该单链表中多余的元素值相同的结点,并释放该节点空间。 struct LNode

{ ElemType data; LNode *next; };

void Del(LNode *&HL) { }

2.用类C语言写出折半查找算法。

2