《《数据结构》考试大纲(1).doc》由会员分享,可在线阅读,更多相关《《数据结构》考试大纲(1).doc(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、专升本数据结构考试大纲专升本数据结构考试大纲一、考试性质本考试是为在计算机专科生中招收本科生而实施的具有选拔功能的水平考试,其指导思想是既要有利于国家对高层次人材的选拔,又要有利于促进高等学校各类课程教学质量的提高,考试对象为 2003 年参加专升本考试的考生。二、考试的基本要求要求学生比较系统地理解数据结构的基本概念和基本知识,掌握表、栈、队列、树和图等数据结构的基本特征和在计算机上实现的方法,要求考生具有抽象思维能力、逻辑推理能力、综合运用所学的知识分析问题和解决问题的能力,以及软件设计和编程能力。三、考试方法和考试时间考试方法为闭卷笔试,考试时间为 120 分钟。四、考试内容和要求1、绪
2、论考试内容:数据结构基本概念和术语,算法、算法的描述和算法分析。考试要求(1)了解非数值问题的数学模型不是数学方程,而是表、树和图之类的数据结构。(2)理解数据、数据元素、数据对象、数据结构和数据类型等的定义。(3)掌握数据的逻辑结构和存储结构及其种类;算法的重要特征等。(4)会根据语句的最大频度计算算法的时间复杂度的方法。2、线性表考试内容:线性表的定义、线性表的逻辑结构、线性表的顺序存储结构和链式存储结构,单向链表、循环链表和双向链表,一元多项式的表示及相加。考试要求(1)了解线性表的定义和线性结构的特点。(2)理解线性表的顺序存储和链式存储,理解数组与单链表表示表的优缺点。(3)掌握线性
3、顺序表中数据元素的存储位置的计算,顺序表、单向链表、循环链表和双向链表的插入、删除等有关操作。(4)会用单链表编写插入、删除等有关算法。(5)能够从时间和空间复杂度的角度综合比较两存储结构的特点及适用场合。3、栈和队列考试内容:栈的定义、栈的表示和实现;队列的定义、队列的表示和实现,链队列、循环队列。考试要求(1)了解栈和队列的定义。(2)理解线性表、栈和队列特点及区别,栈对实现递归过程的作用。(3)掌握顺序栈、链栈的入栈和出栈操作,顺序队列、链队列的入队和出队操作,循环队列的队空和队满的判断。(4)会编写入栈和出栈,入队和出队的有关算法。4、串考试内容:串的有关定义、串的逻辑结构、静态存储结
4、构、动态存储结构和串的基本操作。考试要求(1)了解串的有关定义。(2)理解串的逻辑结构和物理存储结构。(3)掌握串的模式匹配传统方法。(4)理解串的模式匹配的 KMP 算法。5、数组和广义表考试内容:数组的定义和运算、数组的顺序存储结构,特殊矩阵、稀疏矩阵的定义、矩阵的压缩存储,广义表的定义、广义表的存储结构。考试要求(1)了解数组、特殊矩阵和稀疏矩阵的定义,广义表的概念和链表表示。(2)理解矩阵的压缩存储的概念。(3)掌握矩阵的压缩存储的有关计算方法。(4)掌握一种广义表的链式储方法。(5)学习利用分治法的算法设计思想编写递归算法。6、树和二叉树考试内容:树的结构定义和基本操作、二叉树的定义
5、、二叉树的性质、二叉树的存储结构、遍历二叉树和线索二叉树,树和森林、树的存储结构、森林与二叉树的转换、树的遍历,最优二叉树和哈夫曼编码。考试要求(1)了解树的定义和二叉树的定义。(2)理解二叉树的性质、二叉树的存储结构。(3)掌握遍历二叉树的方法、线索二叉树的构造,森林与二叉树的转换,最优二叉树和哈夫曼编码。(4)会利用二叉树的先根、中根和后根遍历解决有关二叉树的应用问题,会编写与二叉树有关的算法。7、图考试内容:图的定义和术语、图的存储结构:邻接矩阵和邻接表,图的遍历:深度优先搜索和广度优先搜索,无向图的连通分量和生成树、最小生成树,拓扑排序。考试要求(1)了解图的定义和术语,生成树和最小生
6、成树的概念。(2)理解邻接矩阵中元素的含义和邻接表中结点的含义。(3)掌握深度优先搜索和广度优先搜索算法。(4)会用 Prim 算法和 Kruskal 算法构造最小生成树,会找出图中顶点的拓扑序列等。8、查找考试内容:静态查找表:顺序查找、二分查找和分块查找,动态查找表:二叉排序树和平衡二叉树,哈希查找、哈希函数的构造方法和处理冲突的方法。考试要求(1)了解顺序查找、二分查找和分块查找的概念,二叉排序树和平衡二叉树、哈希查找等的概念。(2)理解顺序查找、二分查找和分块查找算法,二叉排序树的性质。(3)掌握哈希函数的构造方法和处理冲突的方法,平衡二叉树的查找、插入和删除操作算法,相关查找方法的
7、ASL。(4)会用哈希函数、开放地址法或拉链法建立散列表。9、内部排序考试内容:直接插入排序、希尔排序、快速排序、简单选择排序、堆排序、归并排序和基数排序。各种内部排序方法的比较。考试要求(1)了解排序算法的稳定性问题。(2)理解直接插入排序、希尔排序、快速排序、简单选择排序、堆排序、归并排序和基数排序的基本思想。(3)掌握直接插入排序、希尔排序、快速排序、简单选择排序、堆排序、归并排序的算法和时间分析。(4)会用希尔排序、快速排序、堆排序、二路归并排序方法写出每趟排序的结果,会编写与直接插入排序和简单选择排序有关的算法。五、考试题型及大致比例判断题 10%、选择题 20%、填空题 20%、应
8、用题 30%、编程题 20%。六、考试内容大致比例:内容内容线性表树和二叉树图排序栈和队查找其它比例比例20%20%20%15%10%10%5%七、参考教材1数据结构(C 语言版)严蔚敏清华大学出版社2数据结构江涛 中央广播电视大学出版社2数据结构算法设计指导胡学钢清华大学出版社襄樊学院专升本襄樊学院专升本数据结构考试样卷数据结构考试样卷一、下列叙述中,你认为正确的小题题号有:一、下列叙述中,你认为正确的小题题号有:(10*110*1)。1、顺序循环队列 Q 满的条件是:Q.front+1=Q.rear2、哈夫曼树中没有度为 1 的结点。3、两分法插入排序所需比较次数与待排序记录的初始排列状态
9、有关。4、当待排序记录已经基本有序时,快速排序的执行时间最省。5、在等概率查找情况下,分块查找平均查找长度不仅与表中元素个数有关,而且与每块中元素个数有关。6、用树的前序遍历和中序遍历结果可以导出树的后序遍历;7、树中所有结点的层数之和称为树的高度(深度)。8、三元组表是稀疏矩阵的一种顺序存储结构。9、直接插入排序是一种就地排序,它需要的辅助空间是 O(n)10、C=(x,(a,b),y)是一个长度为 3 的广义表。二、下列各小题提供的选项中,只有一个是正确的,请将你认为正确代码填入下列表格中二、下列各小题提供的选项中,只有一个是正确的,请将你认为正确代码填入下列表格中(14*1.514*1.
10、5)题题号号1234567891011121314选选择择1、若哈夫曼树中其叶结点个数为 n,则非叶结点的个数为。An-1BnCn+1Dlog2n2、最优查找树为平均查找路径长度 w1h1+w2h2+wnhn最小的树,其中 n 表示。A树中叶结点数B 树中的全部结点数C 所有非叶结点数D 查找成功的结点数3、一个栈的输入序列为 1,2,3,4,下面哪一个序列不可能是这个栈的输出序列?A.1,3,2,42,3,4,14,3,1,23,4,2,14、下列排序方法中,哪一种方法的比较次数与记录的初始排列状态无关?A.直接插入排序.起泡排序.快速排序直接选择排序5、若一棵二叉树具有 10 个度为 2
11、的结点,则该二叉树叶结点个数是A.91112不确定6、在顺序表2、5、7、10、14、15、18、23、35、41、52中,用二分法查找关键码 12 需做次关键字比较。A、2B、3C、4D、57、对包含 N 个元素的散列表进行检索,平均检索长度为。A、为 o(log2N)B、为 o(N)C、不直接依赖于 ND、上述三者都不是8、假定有 k 个关键字互为同义词(发生冲突),若用线性探测法把这 k 个关键字存入散列表中,至少要进行次探测。Ak-1BkCk+1Dk(k+1)/29、给定一个整数集合3,5,6,9,12,下列二叉树是该整数集合对应的哈夫曼(Huffman)树。10、若需要在 O(nlo
12、g2(n)的时间内完成对数组的排序,且要求排序是稳定的,则可选择的排序方法是A快速排序B堆排序C归并排序D直接插入排序11、将两个各有 n 个元素的有序表归并成一个有序表,其最少的比较次数是AnB2n-1C(n+1)/2Dn-112、下列方法可以用来判断出一个有向图中是否有环(回路)A 深度优先遍历B拓朴排序C 求最短路径D 求关键路径13、假设有两个串 A 和 B,求 B 在 A 中首次出现的位置的操作,我们称为。A 连接B.模式匹配C 求子串D 求串长14、如果待排序的记录的规模很大,则在下面的排序方式中,我们最好不要选择使用。A 快速排序B.直接插入排序C.堆排序D.归并排序三、三、你认
13、为正确的叙述填在各题的下划线上(你认为正确的叙述填在各题的下划线上(10*210*2)。1、串的主要存贮方式有:定长顺序存贮、和块链存贮。2、堆的存储表示是(顺序的,还是链接的)。3、在 n 个记录的哈希表中进行查找,最少的比较次数是。4、n 个顶点的连通图用邻接矩阵表示时,该矩阵至少有个非零元素.5、评价一个算法好坏的主要标准有。6、若压缩存贮下三角矩阵 Am*n的首地址为 a,每个元素占空间为 b 字节,则元素 aij的地址为。7、栈和队列都是线性表,其中队列的特点是。8、若顺序二叉树中编号为 n 的结点的父结点和右儿子是存在的,则它们的编号应该分别是9、若一数组的记录数为 400,采用分
14、块查找,块长最好取。10、就排序算法的稳定性而言,希尔排序和快速排序分别是。四、应用题(应用题(5*65*6)1 1、假设字符 a,b,c,d,e,f 的使用频度分别是 0.07,0.09,0.12,0.22,0.23,0.27,写出a,b,c,d,e,f 的 Huffman(哈夫曼)编码。2 2、图 1 是用邻接表存储的图,画出此图,并写出从 C 点开始按深度(广度)优先遍历该图的结果,。3 3、试求按关键字序列(12,1,4,3,7,8,10,2)插入生成的二叉排序树和平衡二叉树。4 4、哈希函数为:H(key)=3*key mod11,开放定址的 di=i*(7*keymod10+1),在区间0,10上构造关键字(22,41,53,46,30,13,01,67)的哈希表,并计算其平均查找长度。5 5、判别以下序列是否为小顶堆,如不是,请把它们整理成一小顶堆。30,24,36,12,91,53,47,85,96五、算法编程(五、算法编程(6+6+76+6+7)1、以带头结点的循环单链表来表示队列,且只设指向尾结点的尾指针 L,试编写相应的队列初始化、入队和出队的算法。2、在 T 所指的二叉排序树中插入一个元素 x,使其仍为二叉排序树。3、试基于图的深度优先遍历编写一算法,判断邻接表存贮的图 G 中,顶点 v 和顶点 w 是不是连通的。