数据结构考试试卷详解与答案

1星 需积分: 11 11 下载量 60 浏览量 更新于2024-12-18 1 收藏 48KB DOC 举报
"数据结构期末考试试卷" 数据结构是计算机科学中研究如何组织和存储数据的学科,它是计算机科学的基础之一。数据结构期末考试试卷涵盖了数据结构的基本概念、算法和实现。 1. 判断题 * 线性表的逻辑顺序与存储顺序不一定一致。例如,链表的逻辑顺序是按照元素的顺序排列的,但其存储顺序可能是按照内存地址的顺序排列的。 * 线索二叉树中,任一结点可能没有指向前趋和后继的线索。例如,如果一个结点是叶子结点,它就没有后继结点。 * 栈、队列、数组和串都是线性结构,因为它们的元素都是按照顺序排列的。 * KMP算法是一个不需要回溯的字符串模式匹配算法,它可以在O(n)时间复杂度内找到模式串在源串中的所有出现。 * 图的生成树是该图的极小连通子图,它是指图中的最小子图,使得该图中的所有结点都是连通的。 * 树的后序遍历序列与其对应二叉树的后序遍历序列不同,因为树的后序遍历序列是按照结点的访问顺序排列的,而二叉树的后序遍历序列是按照结点的左子树、右子树和根结点的顺序排列的。 * 二叉排序树的充要条件是任一结点的值均大于其左孩子的值,小于其右孩子的值。 * 稀疏矩阵压缩存储后,就会失去随机存取功能,因为稀疏矩阵压缩存储是将矩阵中的非零元素存储在一个数组中,从而节省存储空间。 * 归并排序可以使用递归和非递归两种方法实现,递归方法是将数组分成两个部分,然后分别排序最后合并,而非递归方法是使用循环来实现排序。 2. 填空题 * 设源串s=“bababaaba”,模式串p=“babaa”,按照KMP算法进行模式匹配,当“[pic]”=“[pic]”,而[pic]时,[pic]应与p3比较。 * 下列算法的时间复杂性是O(n1/2),因为该算法的循环次数是n的平方根。 * 表达式3/(x+2)-8所对应的后缀表达式是3x2+/8-,因为后缀表达式是将中缀表达式转换为后缀表达式的结果。 * 假设以一维数组[pic]作为n阶对称矩阵A的存储空间,以行序为主序存储A的下三角,则元素A[5][8]的值存储在S[41]中,因为对称矩阵的存储顺序是按照行序存储的。 * 该函数的功能是实现两个字符串的比较,试根据字符串比较运算的定义,完善该函数:int strcmp(chars[], chart[]){int i; for(i=0;s[i]&&t[i];i++) if(s[i]!=t[i]) return s[i]-t[i]; return s[i]-t[i];}。 3. 简要回答 * 评价一个排序算法好坏的标准是什么?你知道有哪些排序算法?试比较它们各自的性能? + 正确性:逻辑健壮性:多类数据测试 + 可读性:格式结构化 + 高效:时间复杂度和空间复杂度 + 排序算法有冒泡排序、选择排序、插入排序、归并排序、快速排序等,每种排序算法都有其优缺点。