图书介绍
数据结构PDF|Epub|txt|kindle电子书版本网盘下载
![数据结构](https://www.shukui.net/cover/7/30740969.jpg)
- 周洪玉,邵晶波主编 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302259459
- 出版时间:2011
- 标注页数:359页
- 文件大小:20MB
- 文件页数:370页
- 主题词:数据结构-高等学校-教材
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数据结构有关概念及术语4
1.1.3数据结构和抽象数据类型6
1.2算法描述与分析7
1.2.1算法的定义7
1.2.2算法描述工具——C语言8
1.2.3算法分析技术初步11
习题113
第2章 线性表15
2.1线性表的定义及其运算15
2.1.1线性表的定义15
2.1.2数据运算简介16
2.2线性表的顺序存储结构(向量)16
2.2.1顺序存储结构16
2.2.2向量中基本运算的实现17
2.3线性表的链式存储结构31
2.3.1单链表与指针31
2.3.2单链表的基本运算33
2.4循环链表和双向链表46
2.4.1循环链表46
2.4.2双向链表47
2.4.3顺序存储结构与链表存储结构比较52
2.5线性表的算法实现举例53
2.5.1实现线性表顺序存储结构及运算的C语言源程序53
2.5.2单链表处理的C语言源程序56
习题264
第3章 栈和队列66
3.1栈66
3.1.1栈的定义及运算66
3.1.2栈的顺序存储结构(向量)67
3.1.3栈的链式存储结构72
3.1.4栈的应用75
3.2队列78
3.2.1队列的定义78
3.2.2队列的顺序存储结构(向量)79
3.2.3队列的链式存储结构88
3.3栈和队列的算法实现举例92
习题3102
第4章串105
4.1串的定义及其基本运算105
4.1.1串的定义105
4.1.2串的基本运算106
4.2串的存储结构107
4.2.1串的顺序存储107
4.2.2串的链式存储111
4.3串的模式匹配117
4.3.1 Brute-Force算法117
4.3.2 KMP算法118
4.4串的模式匹配C语言程序实现举例122
4.4.1 Brute-Force算法的实现122
4.4.2 KMP算法的实现123
习题4125
第5章 数组和广义表127
5.1数组的基本概念127
5.1.1数组的概念127
5.1.2数组的顺序表示和实现127
5.1.3特殊矩阵的压缩存储130
5.2稀疏矩阵的三元组存储132
5.2.1稀疏矩阵的三元组表存储133
5.2.2稀疏矩阵的运算133
5.3稀疏矩阵的十字链表存储140
5.3.1十字链表的组成140
5.3.2十字链表的有关算法141
5.4广义表144
5.4.1广义表的概念和特性144
5.4.2广义表的存储结构146
5.4.3求广义表的深度148
5.4.4广义表的输出149
5.4.5建立广义表的存储结构149
5.4.6广义表的其他操作算法150
习题5155
第6章树158
6.1树的基本概念和术语158
6.1.1树的定义158
6.1.2树的常用术语159
6.1.3树的表示方法160
6.1.4树的基本操作161
6.2二叉树161
6.2.1二叉树的定义161
6.2.2二叉树的相关术语162
6.2.3二叉树的重要性质163
6.2.4二叉树的存储结构164
6.2.5二叉树的基本操作及实现167
6.3遍历二叉树169
6.3.1先根(序)遍历(DLR)169
6.3.2中根(序)遍历(LDR)170
6.3.3后根(序)遍历(LRD)170
6.3.4层次遍历170
6.3.5二叉树遍历的非递归实现171
6.3.6二叉树由遍历序列恢复二叉树173
6.3.7不用栈的二叉树遍历的非递归方法174
6.4线索二叉树175
6.4.1线索二叉树的基本概念175
6.4.2线索二叉树的逻辑表示图175
6.4.3线索二叉树的基本操作实现177
6.4.4二叉树遍历的应用181
6.5二叉树、树和森林183
6.5.1树的存储结构183
6.5.2树与二叉树之间的转换186
6.5.3森林与二叉树之间的转换186
6.6树的应用188
6.6.1哈夫曼树的基本概念188
6.6.2哈夫曼树的构造算法190
6.6.3哈夫曼树在编码问题中的应用191
6.6.4哈夫曼树在判定问题中的应用193
6.6.5二叉排序树194
6.7二叉树的建立和遍历C语言源程序示例197
习题6200
第7章图205
7.1图的基本概念205
7.1.1图的定义205
7.1.2图的基本术语206
7.2图的存储结构208
7.2.1邻接矩阵208
7.2.2邻接表209
7.3图的遍历211
7.3.1深度优先搜索211
7.3.2广度优先搜索212
7.3.3求图的连通分量213
7.4图的生成树213
7.4.1生成树的概念213
7.4.2最小生成树214
7.4.3普里姆算法和克鲁斯卡尔算法215
7.5图的应用218
7.5.1拓扑排序218
7.5.2关键路径221
7.5.3最短路径224
7.6图的算法C语言程序实现举例229
7.6.1无向图的邻接表的建立和遍历229
7.6.2有向无环图的拓扑排序和求关键路径231
习题7237
第8章 查找239
8.1基本概念239
8.2静态表查找240
8.2.1顺序表的查找241
8.2.2有序表的查找242
8.2.3索引顺序表的查找246
8.3动态查找表247
8.3.1二叉排序树247
8.3.2平衡二叉树253
8.3.3 B-树262
8.4哈希表265
8.4.1哈希表与哈希函数265
8.4.2构造哈希函数的常用方法266
8.4.3哈希冲突的解决方法269
8.4.4哈希表的查找及其分析271
8.4.5哈希表算法实现C语言源程序274
习题8276
第9章 排序280
9.1排序的基本概念280
9.2插入排序282
9.2.1直接插入排序282
9.2.2折半插入排序283
9.2.3希尔排序284
9.3交换排序289
9.3.1冒泡排序289
9.3.2快速排序290
9.4选择排序294
9.4.1简单选择排序294
9.4.2堆排序296
9.5归并排序303
9.6基数排序304
9.7各种内部排序方法的比较讨论308
9.8有关排序算法的C语言源程序309
9.9外排序316
习题9317
第10章 文件319
10.1文件的基本概念319
10.1.1文件的相关概念319
10.1.2记录的物理结构和逻辑结构320
10.1.3文件的分类321
10.1.4文件的运算321
10.1.5文件的物理结构323
10.2文件的常见组织形式323
10.2.1顺序文件323
10.2.2索引文件324
10.2.3索引顺序文件326
10.2.4散列文件327
10.2.5多重表文件和倒排文件327
习题10328
习题答案329
习题1答案329
习题2答案330
习题3答案332
习题4答案334
习题5答案335
习题6答案338
习题7答案341
习题8答案343
习题9答案347
习题10答案348
附录A抽象数据类型定义350
参考文献359