1、【第 1 页 共 4 页】江西财经大学0910 第二学期期末考试试卷试卷代码:18335C 授课课时:96 考试用时:150 分钟 课程名称:数据结构与算法(软件) 适用对象:软件工程选课班试卷命题人 邓庆山 试卷审核人 一、填空题(每空 2 分,共 20 分)1. 栈与队列和一般线性表的区别体现在_。2. 向一个长度为 n 的顺序线性表删除第 i 个元素( 1link=NULLC. head!=NULLD. head-link!=NULL4.一个栈的入栈序列是 a,b,c,d,e,则栈的不可能的输出序列是() 。A. edcba B. decba C. dceab D. abcde 5.请选
2、出下列说法中唯一正确的一个:( ) 。A. 判断队列是否为空只能通过头结点的 count 信息来判断。B. 除了头结点,队列中的每一个元素都只有一个唯一的前驱。C. 队列在实现递归算法、表达式求值等方面有较多的应用。【第 2 页 共 4 页】D. 队列是一种典型的后进先出(LIFO)的数据结构。6.如果一棵二叉树结点的前序序列是 A、B、C,后序序列是 C、B、A ,则该二叉树结点的中序序列( ) 。A. 必为 A、B、C B. 必为 A、C、BC. 必为 B、 C、A D. 不能确定7.含有 15 个结点的二叉树的最小高度是( )A. 3 B. 4 C. 5 D. 68.具有 n(n0) 个
3、顶点的无向图最多含有( ) 条边。 A. n(n-1) B. n(n+1) C. n(n-1)/2 D. n(n+1)/2 9.在线形表中采用折半查找法查找一个数据,线性表应满足( )A. 以数组方式存储。B. 以链接方式存储C. 以数组方式存储且结点按关键码有序排列。D. 以链接方式存储且结点按关键码有序排列10.快速排序在下列( )情况下最易发挥其长处。A. 被排序的数据中含有多个相同排序码 B. 被排序的数据已基本有序C. 被排序的数据完全无序 D. 被排序的数据中的最大值和最小值相差悬殊三、简答题(要求写出主要操作步骤及结果。每小题 5 分,共 35 分)1试写出下列程序段的输出结果(
4、栈的元素类型是 char)void main() stack S;char x=c,y=k;InitStack(S);Push(S,x);Push(S,a);Push(S,y);Pop(S,x);Push(S,t);Push(S,x);Pop(S,x);Push(S,s);While(!StackEmpty(S)Pop(S,y);printf(“%c”,y);printf(“%c”,x);2. 已知如下的一棵二叉树,写出其先序,中序,后序和层序序列。AB CD E FG HI【第 3 页 共 4 页】3. 假定用于通讯的电文仅有 8 个字母 C1,C2,C8 组成,各个字母在电文中出现的频率分
5、别为 5,25,3,6,10,11,36,4,试为这 8 个字母设计哈夫曼编码树。4已知一无向图的邻接表如下所示,写出从顶点 V1 出发的深度和广度优先搜索序列。5. 求出下图的一棵最小生成树。3 67418526347558 854 6366.设待排序的排序码序列为12, 2, 16, 30, 28, 10, 16*, 20, 6, 18, 试用希尔排序(增量为 5,2,1)排序,写出每趟排序后的结果。7.设散列表为 T012,哈希函数为 H(key)=key%13,给定键值序列是52,41,95,21,14,28,82,30,请画出用线性探测再散列方法处理冲突时所构成的散列表,并求出在等概率情况下,查找成功的平均查找长度。四、证明题(要求写出证明过程。共 8 分)证明:在有 N 个叶子的哈夫曼树上,其结点总数为 2N-1。五、算法设计题(共 17 分,第 1 题 8 分,第 2 题 9 分)1. 试写一个算法,实现在顺序线性表 L 中第 i 个位置之前插入新的元素 e。2. 给出二叉树的二叉链表存储结构,计算二叉树中的叶子结点个数。【第 4 页 共 4 页】