- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构考研大纲 考查目标 理解数据结构的基本概念;掌握数据的逻辑结构、存储结构及其差异,以及各种基本操作的实现。 掌握基本的数据处理原理和方法的基础上,能够对算法进行设计与分析。 能够选择合适的数据结构和方法进行问题求解。 参考教材 严蔚敏,数据结构(C语言版),北京,清华大学出版社,1997 数据结构考研大纲 线性表 线性表的定义和基本操作 线性表的实现 顺序存储结构 链式存储结构 线性表的应用 数据结构考研大纲 栈、队列和数组 栈和队列的基本概念 栈和队列的顺序存储结构 栈和队列的链式存储结构 栈和队列的应用 特殊矩阵的压缩存储 数据结构考研大纲 树与二叉树 树的概念 二叉树 二叉树的定义及其主要特征 二叉树的顺序存储结构和链式存储结构 二叉树的遍历 线索二叉树的基本概念和构造 二叉排序树 平衡二叉树 树、森林 树的存储结构 森林与二叉树的转换 树和森林的遍历 树的应用 等价类问题 哈夫曼(Huffman)树和哈夫曼编码 数据结构考研大纲 图 图的概念 图的存储及基本操作 邻接矩阵法 邻接表法 图的遍历 深度优先搜索 广度优先搜索 图的基本应用及其复杂度分析 最小(代价)生成树 最短路径 拓扑排序 关键路径 数据结构考研大纲 查找 查找的基本概念 顺序查找法 折半查找法 B-树 散列(Hash)表及其查找 查找算法的分析及应用 数据结构考研大纲 内部排序 排序的基本概念 插入排序 直接插入排序 折半插入排序 气泡排序(bubble sort) 简单选择排序 希尔排序(shell sort) 快速排序 堆排序 二路归并排序(merge sort) 基数排序 各种内部排序算法的比较 内部排序算法的应用 大纲分析 知识点范围 把绪论排除了考试大纲范围,这是一个新的变化。但是不代表在考试中不会出现相关的知识点,尤其是概论这一章,建议大家把概论也看看,有助于帮助数据结构课程的复习并且不会花费多少时间。 强调各种数据结构应用 在每种数据结构后面都把相应的应用作为考查知识点 算法是为了解决某类问题而规定的一个有限长的操作序列。一个算法必须满足以下五个重要特性: 1.有穷性 2.确定性 3.可行性 4.有输入 5.有输出 一、算法 1.有穷性 对于任意一组合法输入值,在执行有穷步骤之后一定能结束,即: 算法中的每个步骤都能在有限时间内完成。 2.确定性 对于每种情况下所应执行的操作,在算法中都有确切的规定,使算法的执行者或阅读者都能明确其含义及如何执行。 3.可行性 算法中的所有操作都必须足够基本,都可以通过已经实现的基本操作运算有限次实现之。 4.有输入 作为算法加工对象的量值,通常体现为算法中的一组变量。有些输入量需要在算法执行过程中输入,而有的算法表面上可以没有输入,实际上已被嵌入算法之中。 5.有输出 它是一组与“输入”有确 定关系的量值,是算法进行信息加工后得到的结果,这种确定关系即为算法的功能。 二、算法设计的原则 设计算法时,通常应考虑达到以下目标: 1.正确性 2. 可读性 3.健壮性 4.高效率与低存储量需求 1.正确性 首先,算法应当满足以特定的“规格说明”方式给出的需求。 其次,对算法是否“正确”的理解可以有以下四个层次: a.程序中不含语法错误; b.程序对于几组输入数据能够得出满足要求的结果; c.程序对于精心选择的、典型、苛刻且带有刁难性的几组输入数据能够得出满足要求的结果; 通常以第 c 层意义的正确性作为衡量一个算法是否合格的标准。 d.程序对于一切合法的输入数据都能得出满足要求的结果; 2. 可读性 算法主要是为了人的阅读与交流, 其次才是为计算机执行,因此算法应该易于人的理解;另一方面,晦涩难读的程序易于隐藏较多错误而难以调试。 3.健壮性 当输入的数据非法时,算法应当恰当地作出反映或进行相应处理,而不是产生莫名奇妙的输出结果。 4.高效率与低存储量需求 通常,效率指的是算法执行时间; 存储量指的是算法执行过程中所需的 最大存储空间,两者都与问题的规模 有关。 一个特定算法的“运行工作量” 的大小,只依赖于问题的规模(通常用整数量n表示),或者说,它是问题规模的函数。 三、算法效率的 衡量方法和准则 * * 1.1 数据结构讨论的范畴 1.2 基本概念 1.3 算法和算法的量度 1.1 数据结构讨论的范畴 Niklaus Wirth: Algorithm + Data Structures = Programs 程序设计: 算法: 数据结构: 为计算机处理问题编制 一组指令集 处理问题的策略 问题的数学模型 结构静力分析计算 例如: 数值计算的程序设计
文档评论(0)