合肥工业大学《数据结构》2019-2020学年期末试卷.docxVIP

  • 0
  • 0
  • 约2.51千字
  • 约 2页
  • 2026-01-21 发布于江西
  • 举报

合肥工业大学《数据结构》2019-2020学年期末试卷.docx

合肥工业大学 试 卷 (A) (共2页第1页)

2019~2020学年第二学期课程代码0529822B课程名称数据结构学分4.5课程性质:必修?、选修□、限修□考试形式:开卷?闭卷□

专业班级(教学班)计算机19级1-3班、信安、创新班、智科班考试日期2020年7月3日命题教师胡学钢 系/教研室主任审批签名

一、填空(每空2分,共20分):

1.下面程序段中带下画线的语句的执行次数是。

for(i=1;i=n;i++)

for(j=1;j=n;j++)

for(k=1;k=n;k++)

x++;

2.头指针为head的带头结点的单链表仅有一个元素结点的条件表达式是

3.已知链队列的头尾指针分别是front和rear,则将值x入队的操作语句序列是:

4.如果一棵二叉树的先序序列和中序序列相反,则该二叉树一定满足。

5.在左右子树均非空的先序线索二叉树中,值为空的链域数为。

6.在有20个球队参加的主客场制足球联赛中,共需要进行场次的比赛。

7.采用邻接矩阵来存储图,求最短路径的Dijkstra算法的时间复杂度是。

8.在有序表A[22]中,按二分查找方法进行查找,查找长度为5的元素的下标从小到大依次是。

9.以序列100,60,80,110,125,70,81,135为输入构造的二叉排序树中,假设各元素的查找概率相同,则其平均查找长度是。

10.对数据表(10,1,2,3,4,5,6,7,8,9)进行从下往上的冒泡排序算法(增排序),共需要进行的比较元素的次数是。

二、解答下列各题(每小题6分,共30分)

1.已知一棵二叉树的先序、中序如下,请构造出该二叉树。

先序:ABCDEFGHU

中序:CBEFDGAIJH

2.已知一个文档中仅有10个不同的字符,且各字符的出现次数依次为6,8,12,16,18,20,25,30,35,40。请为各个字符重新编码,以使文档长度最小,并计算出重新编码后的文档长度(以位为单位)。

3.已知图的邻接矩阵A如下,然后按Floyd算法求出A(1)和A(2)矩阵,并标出其中发生变化

4.设散列表长度为11,散列函数H(K)=K%11,采用线性探查法处理冲突,若输入序列为(15,12,20,32,44,58,69,42,31),要求构造出散列表,并求出在等概率情况下查找成功的平均查找长度。

5.对下面数据表执行快速排序,写出每一趟排序的结果,并标出第一趟排序过程中的元素移动情况。

(50,20,80,30,65,18,75,10,150,22,75,110,200,25)

合肥工业大学 试卷 (A) 共2页第2页)

2019~2020学年第二学期课程代码0529822B课程名称数据结构学分4.5课程性质:必修?、选修□、限修□考试形式:开卷?闭卷□

专业班级(教学班)计算机19级1-3班、信安、创新班、智科班考试日期2020年7月3日命题教师胡学钢 系/教研室主任审批签名

三、对下面给定功能的算法,在空白处填写合适的语句序列以实现算法功能:(每小题5分,共10分)

(1)下面函数实现如下表达式的计算:S=1!+2!+3!+…+n!

intSum(intn)

{

intS,i,A;

S=0;A=1;

for(i=1;i=n;i++)

{A=;S=;}

ReturnS;

}

(2)Reverse(n)的功能是:按反序依次打印整数n的各位数字。例如,调用reverse(12345)的输出结果为54321.(说明:不允许再定义和使用其他变量)

voidreverse(intn)

{

if(n10)coutn;

Else{}

}

四、算法设计:分别写出求解下列问题的算法。(每小题10分,共40分)

1.设递增有序的带头结点的单链表A、B分别表示一个集合,设计算法求A=A∩B.并要求时间复杂度为O(|A|+|B|)。

2.二叉树的动态二叉链表结构中的每个结点有三个字段:data,Lchild,Rchild。其中指针Lchild和Rchild的大型为

文档评论(0)

1亿VIP精品文档

相关文档