2014版数据结构高分笔记(第2版,天勤论坛全力奉献,计算机专业考研辅导用书,“统考”与“非统考”的知识点全覆盖,开通在线程序评测系统、在线答疑).pdf

2014版数据结构高分笔记(第2版,天勤论坛全力奉献,计算机专业考研辅导用书,“统考”与“非统考”的知识点全覆盖,开通在线程序评测系统、在线答疑).pdf
 

书籍描述

编辑推荐
《天勤计算机考研高分笔记系列:2014版数据结构高分笔记(第2版)》天勤论坛全力奉献,计算机专业考研辅导用书,“统考”与“非统考”的知识点全覆盖,开通在线程序评测系统、在线答疑。 较之去年的第一版有了重大更新:1.为非统考的考生增加常考知识点的讲解。2.作者通过微博和微信与读者交流,收集读者反馈信息,并将《天勤计算机考研高分笔记系列:2014版数据结构高分笔记(第2版)》的更新信息第一时间发布给读者。3.开通在线程序测评系统,考生可进行上机练习,巩固所学知识点。4.改正所发现的错别字,并进一步优化讲解方式。5.修正代码中出现的bug,并优化解题代码。

目录

新版更新简介及互动服务
新版使用说明
前言
第1章 绪论 1
本章概略 1
1.1 针对考研数据结构的代码书写规范以及C&C++语言基础 1
1.1.1 考研综合应用题中算法设计部分的代码书写规范 1
1.1.2 考研中的C&C++语言基础杂谈 3
1.2 算法的时间复杂度与空间复杂度分析基础 11
1.2.1 考研中的算法时间复杂度杂谈 11
1.2.2 例题选讲 11
1.2.3 考研中的算法空间复杂度分析 13
1.3 数据结构和算法的基本概念 13
1.3.1 数据结构的基本概念 13
1.3.2 算法的基本概念 14
习题 15
习题答案 16
第2章 线性表 19
大纲要求 19
考点与要点分析 19
核心考点 19
基础要点 19
本章知识体系框架图 19
知识点讲解 20
2.1 线性表的基本概念与实现 20
2.2 线性表的基本操作 23
2.2.1 线性表的定义 23
2.2.2 线性表的结构定义 23
2.2.3 顺序表的算法操作 24
2.2.4 单链表的算法操作 27
2.2.5 双链表的算法操作 32
2.2.6 循环链表的算法操作 33
真题仿造 34
真题仿造答案与讲解 34
上机实战 35
习题+历年真题 36
习题答案+历年真题答案 40
第3章 栈、队列和数组 52
大纲要求 52
考点与要点分析 52
核心考点 52
基础要点 52
本章知识体系框架图 52
知识点讲解 53
3.1 栈和队列的基本概念 53
3.1.1 栈的基本概念 53
3.1.2 队列的基本概念 53
3.2 栈和队列的存储结构、算法与应用 53
3.2.1 本章所涉及的数据结构定义 53
3.2.2 顺序栈的基本算法操作 55
3.2.3 链栈的基本算法操作 56
3.2.4 栈的应用 58
3.2.5 顺序队的算法操作 61
3.2.6 链队的算法操作 63
3.3 特殊矩阵的压缩存储 65
真题仿造 67
真题仿造答案与讲解 68
上机实战 71
习题+历年真题 71
习题答案+历年真题答案 76
第4章 串(非统考补充内容) 88
知识点讲解 88
4.1 串数据类型的定义 88
4.1.1 串的定义 88
4.1.2 串的结构定义 88
4.1.3 串的基本操作 89
4.2 串的模式匹配算法 92
4.2.1 一种简单的模式匹配算法 92
4.2.2 KMP算法 93
习题 98
习题答案 99
上机实战 108
第5章 数组和稀疏矩阵(非统考补充内容) 109
知识点讲解 109
5.1 数组和稀疏矩阵 109
5.1.1 多维数组 109
5.1.2 稀疏矩阵 110
习题 115
习题答案 116
上机实战 124
第6章 树与二叉树 125
大纲要求 125
考点与要点分析 125
核心考点 125
基础要点 125
本章知识体系框架图 125
知识点讲解 126
6.1 树的基本概念 126
6.1.1 树的定义 126
6.1.2 树的基本术语 126
6.1.3 树的存储结构 127
6.2 二叉树 127
6.2.1 二叉树的定义 127
6.2.2 二叉树的主要性质 128
6.2.3 二叉树的存储结构 129
6.2.4 二叉树的遍历算法 130
6.2.5 线索二叉树的基本概念和构造 138
6.3 树和森林 141
6.3.1 孩子兄弟存储结构 141
6.3.2 森林与二叉树的转换 142
6.3.3 树和森林的遍历 142
6.4 树与二叉树的应用 143
6.4.1 二叉排序树与平衡二叉树 143
6.4.2 赫夫曼树和赫夫曼编码 143
真题仿造 145
真题仿造答案与解析 146
上机实战 147
习题+历年真题 147
习题答案+历年真题答案 153
第7章 图 168
大纲要求 168
考点与要点分析 168
核心考点 168
基础要点 168
本章知识体系框架图 168
知识点讲解 169
7.1 图的基本概念 169
7.2 图的存储结构 170
7.2.1 邻接矩阵 170
7.2.2 邻接表 172
7.3 图的遍历算法操作 172
7.3.1 深度优先搜索遍历 172
7.3.2 广度优先搜索遍历 174
7.3.3 例题选讲 175
7.4 最小(代价)生成树 177
7.4.1 普里姆算法和克鲁斯卡尔算法 177
7.4.2 例题选讲 182
7.5 最短路径 183
7.5.1 迪杰斯特拉算法 183
7.5.2 弗洛伊德算法 189
7.6 拓扑排序 191
7.6.1 AOV网 191
7.6.2 拓扑排序 191
7.6.3 例题选讲 193
7.7 关键路径 194
7.7.1 AOE网 194
7.7.2 关键路径 194
真题仿造 197
真题仿造答案解析 198
上机实战 199
习题+历年真题 200
习题答案+历年真题答案 205
第8章 排序 218
大纲要求 218
考点与要点分析 218
核心考点 218
基础要点 218
本章知识体系框架图 219
知识点讲解 219
8.1 排序的基本概念 219
8.1.1 排序 219
8.1.2 稳定性 219
8.1.3 排序算法的分类 219
8.2 插入类排序 220
8.2.1 直接插入排序 220
8.2.2 折半插入排序 222
8.2.3 希尔排序 222
8.3 交换类排序 224
8.3.1 起泡排序 224
8.3.2 快速排序 225
8.4 选择类排序 227
8.4.1 简单选择排序 227
8.4.2 堆排序 228
8.5 二路归并排序 231
8.6 基数排序 232
8.7 外部排序 235
8.7.1 基本概念 235
8.7.2 归并排序法 235
8.7.3 败者树 237
真题仿造 239
真题仿造答案与解析 240
上机实战 241
习题+历年真题 241
习题答案+历年真题答案 246
第9章 查找 256
大纲要求 256
考点与要点分析 256
核心考点 256
基础要点 256
本章知识体系框架图 256
知识点讲解 257
9.1 查找的基本概念、顺序查找法、折半查找法 257
9.1.1 查找的基本概念 257
9.1.2 顺序查找法 258
9.1.3 折半查找法 258
9.2 二叉排序树、平衡二叉树 261
9.2.1 二叉排序树 261
9.2.2 平衡二叉树 263
9.3 B-树及其基本操作、B+树的基本概念 266
9.3.1 B-树的基本概念 266
9.3.2 B-树的基本操作 267
9.3.3 B+树的基本概念 272
9.4 散列表 272
9.4.1 散列表的概念 272
9.4.2 散列表的建立方法以及冲突解决方法 273
9.4.3 散列表的性能分析 276
真题仿造 278
真题仿造答案与解析 278
上机实战 279
习题+历年真题 279
习题答案+历年真题答案 284
第10章 考研中某些算法的分治法解释 296
附录 300
附录A 历年真题分值、考点统计表 300
附录B 历年真题考点索引表 302
参考文献 304
考研中某些算法的分治法解释 305
天勤考研高分笔记系列书籍之考研公共课 305
考研政治 306
考研数学 306
考研英语 306

序言
新版更新简介
•为非统考的考生增加常考知识点的讲解
•年度互动更新计划
•开通在线程序测评系统
•改正所发现的错别字,并进一步优化讲解方式
•修正代码中出现的bug,并优化解题代码
•高分笔记系列书籍简介
高分笔记系列书籍包括《数据结构高分笔记》、《组成原理高分笔记》、《操作系统高分笔记》以及《计算机网络高分笔记》等,是一套针对计算机考研的辅导书。它2010年夏天诞生于一群考生之手,其写作风格特色突出表现为:以学生的视角剖析知识难点;以通俗易懂的语言取代晦涩难懂的专业术语;以成功考生的亲身经历指引复习方向;以风趣幽默的笔触缓解考研压力。高分笔记系列书籍从成书的那一日起就不断接受读者的反馈意见,为了更好地与读者沟通,遂成立了天勤论坛。论坛名取自古训天道酬勤,以明示考研之路艰辛,其成功非勤而无以致。论坛中专门为高分笔记系列书籍开设了答疑专区,以弥补书中讲解的百密一疏;勘误专区,让读者成为作者的一部分,实时发现书中的不足以纠正;读者回馈专区,保留最真实的留言,用读者自己的声音向新人展示高分笔记的特色。相信高分笔记系列书籍带给考生的将是更高效、更明确、更轻松、更愉快的复习过程。
数据结构高分笔记简介
众所周知,在计算机统考的四门专业课中,最难拿高分的就是数据结构。但是这门课本身的难度并不是考生最大的障碍,真正的障碍在于考生不能独自把握复习的方向和考试范围。也许有同学要问了,我们不是有大纲吗?照着大纲去复习不就可以了吗?表面上看是这样,但是当你真正开始复习的时候你就会发现,其实大纲只给了考生一个大致范围,有很多地方是模糊的,这些模糊的地方就可能是你纠结的地方。比如大纲里对于栈和队列的考查中有这么一条:“栈和队列的应用”。这个知识点就说得很模糊,因为只要涉及栈和队列的地方,都是其应用的范畴,这时考生该怎么办呢?于是把所有的希望寄托于参考书,希望参考书能帮助我们理解大纲的意图。参考书分两种:一是课本、二是与课本配套的辅导书。对于课本,考生用得最多的就是严蔚敏的《数据结构》,这里我也推荐大家把这本书选作考研辅导教材。因为这本书的内容非常丰富,如果能把这本书中考试大纲要求的章节理解透彻了,参加考研没有任何问题,但是这个过程是漫长的,除非本科阶段就学得非常好。计算机统考后,专业课四门加上公共课三门,一共是七门,绝大多数考生复习的时间一般也就六个月,而数据结构的复习需要占用多少时间,这点大家都很清楚。要在这么短的时间内掌握严蔚敏的《数据结构》中考纲要求的知识点,基本上是不可能的,这就需要一本辅导书来依照大纲从课本中总结出考纲要求的知识点,才能使得考生在短时间内达到研究生考试的要求。市面上的参考书有两种:一种是四合一的辅导书、另一种是分册的,比如网上流行的《1800题》及其第二版,此书中题目极多,并且有很多老式的考研题,有些算法设计题的答案是用Pascal语言写的。这本书中的题目一般考生全做基本上是不可能的,挑着做又会把时间浪费在选题上。不可否认,这本书确实是一本非常好的题库,但是考生直接拿来用做考研辅导书却不太合适。这种情况下,就需要有一本优质的完全针对新大纲的辅导书出现,这就是高分笔记产生的原因。
复习过程如图(网页中此处图略)
图中所涉及的书都是大家很熟悉的吧。当年这些书我都买了,花了很大心思才从中找出在考研战场上真正有用的东西。比如《1800题》,里边既有好题,又有废题,我相信很多人都希望有人能从中去掉重复的题目,选出大纲要求的题目,并能把解答写得更通俗易懂点,可是当时没有人这么做,而现在我所做的工作就是从这1800题中选出了大纲要求的题目,并且修正了部分解答,使其更容易理解,我想这也是你们很想要的吧。其次是严蔚敏的《数据结构》,此书写得很严谨,语言表述非常专业,对于基础稍差的同学来说读起来十分费力,要很长时间才能适应这本书的写作风格。我当时就是在这本书中痛苦地挣扎了很久,看第三遍的时候才真正的可以说适应了,何苦这样呢?如果当时有一本辅导书帮我把那些复杂程序的执行过程,拗口的专业术语,令人头大的符号,翻译成容易理解的语言,我就可以节省很多时间,可惜当时也没有。同样我现在所做的事情就是根据自己复习的经验,以及对这本书的理解,把其中考试不需要的内容删掉,把需要的内容改造成一般学生容易接受的形式来讲述。对于李春葆的《数据结构习题与解析》我也做了类似的处理,并且,我在本书中穿插讲解了一些考试大纲中没有明文规定但是很多算法题目中大量用到的算法设计思想,来帮助大家提高解算法设计题的能力,比如搜索(打印图中两节点之间的所有路径)、分治法(二分法排序、求树的深度等)等算法思想。因此我相信这本书会给你的考研复习带来很大的帮助。
本书特点:
(1)精心挑选出适合考研的习题,并配上通俗易懂的答案,供你自测和练习。
(2)总结出考研必备知识点,并且帮你把其中过于专业过于严谨的表述翻译成通俗易懂的语言。
(3)针对于近年数据结构大题的出题风格(比如算法设计题目中的三段式题目:1.表述算法思想。2.写出算法描述。3.计算算法的时间和空间复杂度),设计了独特的真题仿造部分,让你在复习的过程中逐渐养成适合解决考研类型题目的习惯。
听我说了这么多之后,很多学生会问,我只看你这本书够不够?还需要自己准备其他书吗?对于这个问题,我用下图来回答。
从图中可以看到,如果你只看本书,你能达到考研要求水平的95%~105%,为什么是这样,因为今年大纲还没有公布,所以我不敢保证我的书涵盖大纲所有内容。但是数据结构中的经典内容本书已经全部包括,再加上对这两年统考大纲范围的解读,估计今年大纲变化不会太大,毕竟数据结构是一门经典科目,因此考研对这一门科的考察范围较为稳定。从图中同样可以看出,掌握了严蔚敏的《数据结构》,你可以至少掌握比考试范围多出30%的内容,但是这需要花很多时间,并不可行。因此在这里我建议大家先看本书,把重要知识点先拿到手,然后把严蔚敏的《数据结构》当做字典来用,等正式大纲出来之后再进行查缺补漏,这不失为一种较为高效的复习方法。这本书不仅涵盖了考试大纲绝大部分内容,更重要的是它会帮助你理解大纲,理解出题人的思路,这样你就会明白哪一类的题目有可能考,哪一类的题目不会考,慢慢地,你复习的方向感会越来越明确,效率会越来越高。
编者

文摘
31.B。本题考查图以邻接表为存储结构的图的深度优先搜索遍历。本题遍历过程如下:起点为1,1先输出;与1的第一个邻接点为2,2输出;与2的第一个邻接点为3,3输出;与3的第一个邻接点为5,5输出;与5的第一个邻接点为4,4输出;所有顶点遍历完全。因此遍历序列为:1,2,3,5,4。
注意:此题不可以将图画出后进行深度优先搜索遍历,然后找出答案。因一般图中对于每个顶点的邻接点是没有次序规定的,比如图5-28中顶点1的三个邻接点2、3、4,反映在一般的图中,没有先后次序之分,当访问完顶点1之后,可任选2,3,4之中的一个进行访问。图用邻接表进行存储之后,则对顶点的邻接点进行了次序的规定。如图5-28在进行遍历时,访问完顶点1之后必须访问顶点2,而不能先访问顶点3或4。由此还可以知道,对于一般的图,其深度优先搜索遍历序列不一定是唯一的,但如果图用邻接表进行存储,则其深度优先搜索遍历序列则被唯一确定。
32.A。本题考查图的深度优先搜索遍历。图的深度优先搜索遍历并不一定唯一,因此解此类题目的快速做法为:当遍历完图中某一顶点之后,参照题31.B。本题考查图以邻接表为存储结构的图的深度优先搜索遍历。本题遍历过程如下:起点为1,1先输出;与1的第一个邻接点为2,2输出;与2的第一个邻接点为3,3输出;与3的第一个邻接点为5,5输出;与5的第一个邻接点为4,4输出;所有顶点遍历完全。因此遍历序列为:1,2,3,5,4。
注意:此题不可以将图画出后进行深度优先搜索遍历,然后找出答案。因一般图中对于每个顶点的邻接点是没有次序规定的,比如图5-28中顶点1的三个邻接点2、3、4,反映在一般的图中,没有先后次序之分,当访问完顶点1之后,可任选2,3,4之中的一个进行访问。图用邻接表进行存储之后,则对顶点的邻接点进行了次序的规定。如图5-28在进行遍历时,访问完顶点1之后必须访问顶点2,而不能先访问顶点3或4。由此还可以知道,对于一般的图,其深度优先搜索遍历序列不一定是唯一的,但如果图用邻接表进行存储,则其深度优先搜索遍历序列则被唯一确定。
32.A。本题考查图的深度优先搜索遍历。图的深度优先搜索遍历并不一定唯一,因此解此类题目的快速做法为:当遍历完图中某一顶点之后,参照题目中选项来选择下一顶点进行访问。选项中对于1、2两顶点已经确定。从2开始,下一步只有一个顶点4可以选择,因此排除选项D。访问完4之后,待选顶点为3、5、6,此时A、B、C三项都可以,因A、B两项在4之后都选择了3进行访问(如果访问3是错误的这样可以同时排除两个选项),因此此步访问3。3访问过之后,3的邻接点都已经被访问,退回4,此时只有5、6两个待选顶点,同上一步,选择5进行访问。5访问完之后,只有7可供选择,而B项中在5之后却选择了访问6,因此排除B。A项中选择了7进行访问,满足要求。之后访问最后一个顶点6,完成遍历。

内容简介
《天勤计算机考研高分笔记系列:2014版数据结构高分笔记(第2版)》内容简介:今年根据计算机专业研究生入学考试形势的变化(逐渐实行非统考)对《天勤计算机考研高分笔记系列:2014版数据结构高分笔记(第2版)》作了大量非统考知识点的讲解,目前书中所包含的知识点讲解除覆盖统考大纲的所有内容外,对各大自主命题高校所要求的知识点也进行了全面的讲解。
《天勤计算机考研高分笔记系列:2014版数据结构高分笔记(第2版)》可作为参加计算机专业研究生入学考试的复习指导用书(包括统考和非统考),也可作为全国各大高校计算机专业或非计算机专业的学生学习数据结构课程的辅导用书。

购买书籍

当当网购书 京东购书 卓越购书

PDF电子书下载地址

相关书籍

搜索更多