图书介绍
数据结构PDF|Epub|txt|kindle电子书版本网盘下载
- 魏振钢主编 著
- 出版社: 北京:高等教育出版社
- ISBN:9787040209327
- 出版时间:2011
- 标注页数:349页
- 文件大小:17MB
- 文件页数:360页
- 主题词:数据结构-高等学校-教材
PDF下载
下载说明
数据结构PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 绪论1
1.1 数据结构的研究内容1
1.1.1 用计算机解决实际问题的过程1
1.1.2 学习数据结构的意义3
1.2 数据结构的基本概念及术语5
1.3 算法与算法分析7
1.3.1 算法的定义及特性7
1.3.2 算法的评价及性能分析8
1.4 多核技术与并行算法9
1.4.1 多核技术简介9
1.4.2 并行算法设计11
1.5 算法的描述与实现19
1.5.1 C语言中的关键语法格式19
1.5.2 C语言中的数据类型20
1.5.3 C语言中与传递参数相关的技术22
本章小结23
习题及思考题23
第2章 线性表25
2.1 线性表的概念26
2.1.1 线性表的定义26
2.1.2 线性表的运算26
2.2 线性表的顺序存储28
2.2.1 顺序表28
2.2.2 顺序表上的基本操作29
2.2.3 顺序表的应用33
2.3 线性表的链式存储35
2.3.1 单链表35
2.3.2 循环链表43
2.3.3 双向链表45
2.3.4 多线程链表46
2.4 顺序表与链表的比较48
2.5 应用48
2.5.1 约瑟夫问题48
2.5.2 一元多项式的表示及相加52
本章小结58
习题及思考题58
实验题目62
第3章 串63
3.1 串及其运算63
3.1.1 串的定义63
3.1.2 串的基本运算64
3.2 串的表示与实现65
3.2.1 定长顺序串66
3.2.2 堆串67
3.2.3 块链串69
3.3 串模式匹配算法70
3.3.1 简单的串模式匹配算法70
3.3.2 KMP算法71
3.4 串的应用74
本章小结75
习题及思考题75
第4章 栈与队列77
4.1 栈78
4.1.1 栈的定义与运算78
4.1.2 顺序栈79
4.1.3 链栈82
4.1.4 多线程栈83
4.2 栈的应用85
4.2.1 数制转换85
4.2.2 括号匹配检验86
4.3 栈与递归的实现89
4.3.1 递归的定义89
4.3.2 递归的原理90
4.3.3 递归的应用及算法实现91
4.3.4 递归算法的非递归化93
4.4 队列95
4.4.1 队列的定义与运算95
4.4.2 顺序队列96
4.4.3 链队列100
4.4.4 共享队列103
4.5 队列的应用105
4.5.1 回文判断105
4.5.2 “舞会”问题106
本章小结108
习题及思考题108
实验题目111
第5章 数组与广义表114
5.1 多维数组115
5.1.1 数组的定义115
5.1.2 数组的运算116
5.2 数组的顺序存储116
5.2.1 数组的顺序存储结构116
5.2.2 数组元素的地址计算117
5.3 矩阵的压缩存储119
5.3.1 特殊矩阵119
5.3.2 稀疏矩阵121
5.4 矩阵相乘的并行算法128
5.4.1 矩阵相乘的基本概念128
5.4.2 串行算法128
5.4.3 并行算法128
5.5 广义表131
5.5.1 广义表的定义131
5.5.2 广义表的存储结构133
5.5.3 广义表的相关算法134
本章小结136
习题及思考题136
第6章 树139
6.1 树的基本概念140
6.1.1 树的定义140
6.1.2 树的表示方法141
6.1.3 树的基本术语142
6.1.4 树的运算143
6.2 二叉树144
6.2.1 二叉树的基本概念144
6.2.2 二叉树的性质145
6.2.3 二叉树的存储结构147
6.3 二叉树的遍历150
6.3.1 遍历方法150
6.3.2 遍历算法的应用154
6.4 线索二叉树158
6.4.1 线索二叉树的定义和实现158
6.4.2 线索二叉树的算法实现160
6.5 树与二叉树的转换161
6.5.1 树与森林的存储161
6.5.2 树、森林与二叉树的相互转换164
6.5.3 树与森林的遍历168
6.6 哈夫曼树170
6.6.1 哈夫曼树的基本概念171
6.6.2 哈夫曼树的构造172
6.6.3 哈夫曼树的应用174
本章小结180
习题及思考题180
实验题目184
第7章 图186
7.1 图的定义及术语186
7.1.1 图的定义186
7.1.2 图的运算187
7.1.3 基本术语188
7.2 图的存储结构191
7.2.1 邻接矩阵表示法191
7.2.2 邻接表表示法196
7.3 图的遍历201
7.3.1 深度优先搜索201
7.3.2 广度优先搜索206
7.4 图的连通性210
7.4.1 无向图的连通分量210
7.4.2 图的生成树210
7.4.3 图的最小生成树210
7.5 最短路径215
7.5.1 单源点最短路径问题215
7.5.2 Dijkstra算法的并行化218
7.5.3 求任意一对顶点间的最短路径220
7.6 有向无环图221
7.6.1 拓扑排序221
7.6.2 关键路径225
7.7 应用实例228
本章小结231
习题及思考题231
实验题目235
第8章 查找236
8.1 查找的基本概念237
8.2 基于线性表的查找法238
8.2.1 顺序查找法238
8.2.2 折半查找法239
8.2.3 分块查找法243
8.3 基于树的查找法244
8.3.1 二叉排序树245
8.3.2 平衡二叉排序树255
8.3.3 B树260
8.4 散列技术267
8.4.1 散列表的基本概念267
8.4.2 散列函数的设计268
8.4.3 处理冲突的方法271
8.4.4 散列表的查找过程274
8.4.5 散列法的性能分析275
8.5 应用实例277
本章小结279
习题及思考题280
实验题目281
第9章 内部排序283
9.1 排序的基本概念284
9.2 选择排序285
9.2.1 简单选择排序285
9.2.2 堆排序286
9.2.3 基于并行的锦标赛排序291
9.3 插入排序292
9.3.1 直接插入排序292
9.3.2 折半插入排序294
9.3.3 希尔排序295
9.4 交换排序297
9.4.1 冒泡排序298
9.4.2 快速排序299
9.4.3 快速排序的多线程实现302
9.5 归并排序303
9.6 基数排序306
9.6.1 多关键字的排序306
9.6.2 链式基数排序307
9.7 排序算法分析308
9.8 应用实例309
本章小结312
习题及思考题312
实验题目314
第10章 文件315
10.1 文件的基本概念315
10.2 顺序文件316
10.3 索引文件317
10.3.1 索引文件的基本概念317
10.3.2 ISAM文件和VSAM文件318
10.4 散列文件320
10.5 倒排文件321
本章小结321
习题及思考题322
附录A 期末考试模拟试卷及全国硕士研究生入学考试统考试题323
期末考试模拟试卷一323
期末考试模拟试卷二325
期末考试模拟试卷三328
期末考试模拟试卷四330
2009年全国硕士研究生入学考试统考试题“数据结构”部分334
2010年全国硕士研究生入学考试统考试题“数据结构”部分337
附录B 数据结构实验报告范例339
附录C Visual C++6.0开发环境的介绍341
附录D OpenMP并行程序设计简介344
参考文献349