图书介绍
数据结构实用教程pdf电子书版本下载
- 张居晓,乔正洪,朱胜强等编著 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302302155
- 出版时间:2012
- 标注页数:341页
- 文件大小:45MB
- 文件页数:351页
- 主题词:数据结构-高等职业教育-教材
PDF下载
下载说明
数据结构实用教程PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 绪论 1
1.1 什么是数据结构 2
1.1.1 数据结构的产生与发展 2
1.1.2 数据和数据结构 3
1.1.3 数据的逻辑结构和存储结构 3
1.1.4 数据类型 5
1.2 算法与算法分析 7
1.2.1 算法 7
1.2.2 算法设计的目标 7
1.2.3 算法设计的时间复杂度 8
1.2.4 算法设计的空间复杂度 9
本章小结 9
习题 10
第2章 线性表 13
2.1 工作场景导入 14
2.2 线性表的定义和基本操作 14
2.2.1 线性表的定义 14
2.2.2 线性表的基本操作 15
2.3 线性表的顺序存储结构 16
2.3.1 顺序表的特点 16
2.3.2 顺序表的基本操作 16
2.4 线性表的链式存储结构 19
2.4.1 单链表 19
2.4.2 双向链表 25
2.4.3 循环链表 27
2.5 回到工作场景 28
2.6 工作实训营 32
2.6.1 训练实例 32
2.6.2 常见问题解析 36
本章小结 38
习题 39
第3章 栈和队列 43
3.1 工作场景导入 44
3.2 栈 44
3.2.1 栈的概念及操作 45
3.2.2 栈的实现与基本操作 46
3.2.3 栈的应用 51
3.3 队列 55
3.3.1 队列的概念及操作 55
3.3.2 循环队列 56
3.3.3 队列的基本操作实现 58
3.3.4 队列的应用 62
3.4 回到工作场景 66
3.5 工作实训营 71
3.5.1 训练实例一:模拟排队看病 71
3.5.2 训练实例二:模拟计算器 74
3.5.3 常见问题解析 79
本章小结 80
习题 80
第4章 串 83
4.1 工作场景导入 84
4.2 串的基本概念 84
4.3 串的顺序存储结构与基本操作 85
4.4 串的链式存储结构 88
4.5 串的模式匹配 90
4.5.1 Brute.Force算法 91
4.5.2 KMP算法 92
4.6 回到工作场景 95
4.7 工作实训营 97
4.7.1 训练实例 97
4.7.2 常见问题解析 99
本章小结 99
习题 100
第5章 数组及广义表 103
5.1 工作场景导入 104
5.2 数组的定义 104
5.3 数组的顺序存储结构与实现 105
5.3.1 数组的顺序存储结构 105
5.3.2 基本操作的实现 106
5.3.3 数组的应用举例 108
5.4 矩阵的压缩存储 112
5.4.1 特殊矩阵 112
5.4.2 稀疏矩阵 116
5.5 广义表 119
5.5.1 广义表的定义 119
5.5.2 广义表的存储结构 119
5.5.3 广义表的应用 124
5.6 回到工作场景 125
5.7 工作实训营 127
5.7.1 训练实例 127
5.7.2 常见问题解析 128
本章小结 129
习题 130
第6章 树 133
6.1 工作场景导入 134
6.2 树的基本概念 134
6.2.1 树的定义 134
6.2.2 树的基本术语 135
6.3 二叉树 136
6.3.1 二叉树的基本概念 136
6.3.2 二叉树的存储结构 138
6.4 二叉树的遍历 143
6.4.1 二叉树的前序遍历 143
6.4.2 二叉树的中序遍历 144
6.4.3 二叉树的后序遍历 145
6.5 线索二叉树 148
6.5.1 线索二叉树的定义 148
6.5.2 中序线索二叉树 149
6.6 树和森林 151
6.6.1 树的存储结构 151
6.6.2 森林、树、二叉树的相互转化 153
6.6.3 树和森林的遍历 155
6.7 哈夫曼树及其应用 155
6.7.1 哈夫曼树的概念 156
6.7.2 哈夫曼编码 158
6.8 回到工作场景 161
6.9 工作实训营 164
6.9.1 训练实例 164
6.9.2 常见问题解析 167
本章小结 168
习题 168
第7章 图 171
7.1 工作场景导入 172
7.2 图的基本概念与存储方式 172
7.2.1 邻接矩阵表示法 175
7.2.2 邻接表表示法 178
7.3 图的遍历 179
7.3.1 深度优先搜索遍历 179
7.3.2 广度优先搜索遍历 180
7.3.3 遍历算法的实现 182
7.4 生成树和最小生成树 185
7.4.1 生成树 185
7.4.2 最小生成树 185
7.4.3 普里姆算法 186
7.4.4 克鲁斯卡尔算法 190
7.5 最短路径 196
7.5.1 单源点最短路径 197
7.5.2 所有顶点对最短路径问题 199
7.6 回到工作场景 199
7.7 工作实训营 202
7.7.1 训练实例 202
7.7.2 常见问题解析 205
本章小结 207
习题 208
第8章 查找 211
8.1 工作场景导入 212
8.2 查找的基本概念 212
8.3 顺序查找 213
8.4 二分查找 214
8.5 分块查找 217
8.6 二叉查找树 220
8.6.1 二叉查找树的定义 220
8.6.2 二叉查找树的插入 221
8.6.3 二叉查找树的查找 222
8.6.4 二叉查找树的删除 224
8.7 哈希表 227
8.7.1 构造哈希函数的方法 228
8.7.2 哈希冲突解决方法 229
8.7.3 哈希表的查找与分析 235
8.8 回到工作场景 237
8.9 工作实训营 238
8.9.1 训练实例 238
8.9.2 常见问题解析 240
本章小结 241
习题 242
第9章 排序 245
9.1 工作场景导入 246
9.2 排序的基本概念 246
9.3 插入排序 247
9.3.1 直接插入排序 247
9.3.2 希尔排序 248
9.4 交换排序 250
9.4.1 冒泡排序 250
9.4.2 快速排序 251
9.5 选择排序 252
9.5.1 直接选择排序 252
9.5.2 堆排序 254
9.6 归并排序 256
9.6.1 二路归并排序 256
9.6.2 二路归并排序的实现 257
9.7 回到工作场景 259
9.8 工作实训营 260
9.8.1 训练实例 260
9.8.2 常见问题解析 262
本章小结 264
习题 264
第10章 综合实训 267
10.1 综合实训一 268
10.1.1 案例导入 268
10.1.2 问题解析 268
10.1.3 设计目标 269
10.1.4 代码编写 269
10.1.5 调试运行 279
10.2 综合实训二 279
10.2.1 案例导入 279
10.2.2 问题解析 280
10.2.3 设计目标 280
10.2.4 代码编写 281
10.2.5 调试运行 285
10.3 综合实训三 287
10.3.1 案例导入 287
10.3.2 问题解析 287
10.3.3 设计目标 287
10.3.4 代码编写 287
10.3.5 调试运行 295
附录 习题参考答案 297
参考文献 341