1、广东海洋大学 2013 2014 学年第 1 学期 数据结构与算法 课程试题 考试 A 卷 闭卷课程号:19232502 考查 B 卷 开卷题 号 一 二 三 四 五 六 七 八 九 十 总分 阅卷教师各题分数 12 15 15 15 20 12 11 100实得分数一、 选择题(6 小题,每题 3 分)1. 若某线性表中最常用的操作是取第 i 个元素和找第 i 个元素的前驱,则采用( A )存储方法 最节省时间A 顺序表 B 单链表 C 双链表 D 单循环链表2. 一个栈的入栈序列是 1,2,3,4,5,则不可能的出栈序列是( C )A 5,4,3,2,1 B 4,5,3,2,1 C 4,3
2、,5,1,2 D 1,2,3,4,53. 深度为 k 的完全二叉树至多有( C )个结点A B C D 21k12k 12k4. G 是一个非连通无向图,共 28 条边,则该图至少有( D )个顶点 kA 6 B 7 C 8 D 95. 在平衡二叉树中插入一个结点后造成不平衡,设最低的不平衡结GDOU-B-11-302点为 A,并已知 A 的左孩子平衡因子为 0,右孩子平衡因子为 1,则应该做( C )型调整以使其平衡A LL B LR C RL D RR6. 下述排序方法中,时间性能和待排序记录的初始状态无关的是( C )A 插入排序和快速排序 B 归并排序和快速排序C 选择排序和归并排序
3、D 插入排序和归并排序二、填空题1. 数组 Qn用来表示一个循环队列,front 为队头元素的前一个位置,rear 为队尾元素位置,计算队列中元素个数的公式为_(rear-front+n)%n_。2. 已知一棵度为 3 的树有 2 个度为 1 的结点,3 个度为 2 的结点,4 个度为 3 的结点。则该树中有_12_个叶子结点。3. 已知无向图的顶点数为 n,边数为 e,其邻接表表示的空间复杂度为_O(n+e) _。4. 假定一个数列25,43,62,31,48,56,采用散列函数为 H(k)=k mod 7,则元素 48 的同义词是_62_。5. 利用简单选择排序对 n 个记录进行排序,最坏
4、情况下,记录交换次数为_n-1_。三、(15 分)已知一棵二叉树的中序遍历序列为 DBKEHJAFCIG,后序遍历序列为 DKJHEBFIGCA,试画出该二叉树并给出其前序遍历序列四、(15 分)设用于通信的电文由字符集a,b,c,d,e,f,g,h 中的字母构成,它们在电文中出现的频度分别为0.02,0.30,0.08,0.14,0.17,0.11,0.12, 0.06,回答下面问题:(1)为这八个字符设计哈夫曼编码(2)对这八个字符进行等长编码需要几位二进制数,哈夫曼编码比等长编码电文总长压缩多少?五、(20 分)已知一个长度为 11 的线性表 List=(12, 24, 36, 90, 52, 30, 41, 8, 10, 38, 61),试回答下面问题(1)将线性表元素依次插入一个空的平衡二叉树,画出所得平衡二叉树,如果假设每个元素查找概率相同,则平均查找长度为多少?(2)如果对线性表元素排序后进行折半查找,画出折半查找判定树,假设每个元素查找概率相同,计算平均查找长度。六、(12 分)已知数据序列为(11,4,8,19,6,31,23),写出快速排序及堆排序每一趟的结果解:七、(11 分)设单链表以非递减有序排列,设计算法实现在单链表中删除值相同的多余结点。