图书介绍
数据结构pdf电子书版本下载
- 冯俊编著 著
- 出版社: 北京:清华大学出版社
- ISBN:7302156034
- 出版时间:2007
- 标注页数:278页
- 文件大小:17MB
- 文件页数:293页
- 主题词:数据结构-高等学校-教材
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.1.3 数据的逻辑结构 5
1.1.4 数据的存储结构 9
1.1.5 数据的运算 10
1.2 算法 11
1.2.1 什么是算法 11
1.2.2 算法的描述 12
1.2.3 算法设计 14
1.2.4 算法设计的要求 15
1.2.5 算法分析 16
1.3 程序、程序设计与程序设计方法学 17
1.3.1 程序 17
1.3.2 程序设计 18
1.3.3 程序设计方法学 19
1.4 课程设计相关知识 20
1.4.1 课程设计目的与内涵 21
1.4.2 课程设计步骤 21
1.4.3 课程设计报告规范 22
课后练习与课程设计 22
第2章 线性表 24
2.1 顺序表 24
2.1.1 向量的顺序存储表示 24
2.1.2 向量的运算 25
2.1.3 举例 27
2.1.4 不等长结点的索引表示——目录表 28
2.2 链表 29
2.2.1 指针与指针对象 29
2.2.2 单链表 32
2.2.3 线性表的两种存储比较 36
2.2.4 可利用空间表及其管理 36
2.3 线性表的其他链接存储表示 38
2.3.1 循环链表 38
2.3.2 双向链表 39
2.3.3 静态链表 41
2.4 课程设计相关知识与应用示例 43
2.4.1 算法设计中的常用方法 43
2.4.2 一元多项式相乘 43
课后练习与课程设计 47
第3章 栈和队列 50
3.1 栈的概念 50
3.2 顺序栈 50
3.2.1 顺序栈的存储表示 50
3.2.2 顺序栈的基本运算及其实现 51
3.3 链接栈 52
3.3.1 链接栈的存储表示 52
3.3.2 链接栈的基本运算及其实现 53
3.4 栈的应用举例 54
3.4.1 数制转换 54
3.4.2 表达式求值 55
3.5 队列的概念 59
3.6 顺序队列 59
3.6.1 顺序队列的存储表示 59
3.6.2 顺序队列的基本运算及其实现 60
3.7 链接队列 62
3.7.1 链接队列的存储表示 62
3.7.2 链接队列的基本运算及其实现 63
3.8 随机事件模拟 64
3.9 课程设计相关知识与应用示例 67
3.9.1 递归的概念 67
3.9.2 递归过程设计 69
3.9.3 递归过程与非递归过程 69
课后练习与课程设计 71
第4章 几种特殊线性表 75
4.1 串 75
4.1.1 串的基本概念 75
4.1.2 串的存储表示 76
4.1.3 串的运算及其实现 79
4.2 数组 80
4.2.1 数组的概念 81
4.2.2 数组的顺序存储表示 81
4.3 矩阵 82
4.3.1 对称矩阵的压缩存储 83
4.3.2 对角矩阵的压缩存储 83
4.3.3 稀疏矩阵的三元组顺序表存储表示 85
4.3.4 稀疏矩阵的十字链表存储表示 86
4.3.5 稀疏矩阵的转置运算 86
4.3.6 稀疏矩阵的插入运算 88
4.4 广义表 90
4.4.1 广义表的基本概念与逻辑结构 90
4.4.2 广义表的存储表示 91
4.4.3 广义表的运算 91
4.4.4 多元多项式的存储表示 93
4.5 课程设计相关知识与应用示例 94
4.5.1 梵天塔问题 94
4.5.2 再谈递归过程设计 96
4.5.3 求广义表的深度 96
课后练习与课程设计 98
第5章 内排序 102
5.1 排序的基本概念 102
5.2 直接插入排序 103
5.3 直接选择排序 104
5.4 冒泡排序 106
5.5 希尔排序 107
5.6 快速排序 109
5.7 归并排序 113
5.7.1 排序文件的归并 113
5.7.2 2-路归并排序 114
5.8 基数排序 116
5.9 各种排序方法的比较 120
5.10 课程设计相关知识与应用示例 122
5.10.1 自顶向下设计技术与方法 122
5.10.2 逐步求精设计技术与方法 123
5.10.3 积木游戏 124
课后练习与课程设计 126
第6章 树和二叉树 129
6.1 树的基本概念 129
6.2 树的存储结构 131
6.2.1 树的标准形式存储结构 131
6.2.2 树的逆形式存储结构 132
6.2.3 树的扩充标准形式存储结构 133
6.2.4 树的双亲数组存储结构 134
6.2.5 树的孩子链表存储结构 134
6.2.6 树的三重链表存储结构 136
6.3 树的遍历和树的线性表示 137
6.3.1 树的前序遍历 137
6.3.2 树的后序遍历 139
6.3.3 树的层次遍历 140
6.3.4 树的线性表示 142
6.4 二叉树 143
6.4.1 二叉树的定义 143
6.4.2 满二叉树和完全二叉树 143
6.4.3 二叉树的性质 144
6.4.4 二叉树与树(或森林)之间的转换 145
6.4.5 二叉树的存储表示 147
6.5 二叉树的遍历 151
6.5.1 二叉树的遍历 151
6.5.2 由遍历序列构造二叉树 154
6.5.3 基于二叉树遍历操作的算法举例 155
6.6 线索二叉树 158
6.6.1 线索二叉树 158
6.6.2 线索二叉树的利用 159
6.6.3 二叉树的线索化 162
6.7 哈夫曼树及其应用 163
6.7.1 二叉树的路径长度和带权路径长度 163
6.7.2 哈夫曼树和哈夫曼算法 165
6.7.3 哈夫曼树的应用 167
6.8 课程设计相关知识与应用示例 171
6.8.1 模块化设计技术与方法 171
6.8.2 八皇后问题 174
课后练习与课程设计 180
第7章 图 184
7.1 图的基本概念 184
7.2 图的存储结构 187
7.2.1 邻接矩阵 187
7.2.2 邻接表 189
7.2.3 无向图的多重邻接表 192
7.3 图的遍历 192
7.3.1 深度优先搜索法 193
7.3.2 广度优先搜索法 194
7.3.3 求图的(强)连通分量 196
7.4 生成树与最小生成树 196
7.4.1 生成树的概念 196
7.4.2 最小生成树 197
7.5 最短路径 201
7.5.1 单源最短路径 201
7.5.2 每一对顶点间的最短路径 203
7.6 拓扑排序 207
7.6.1 AOV网 207
7.6.2 拓扑排序 208
7.7 关键路径 210
7.7.1 AOE网 210
7.7.2 关键路径 210
7.8 课程设计相关知识与应用示例 214
7.8.1 试探和回溯 214
7.8.2 递推算法 215
7.8.3 骑士游历问题 215
课后练习与课程设计 219
第8章 查找 223
8.1 线性表的查找 223
8.1.1 顺序查找 223
8.1.2 折半查找 224
8.1.3 分块查找 225
8.2 树型结构的查找 226
8.2.1 二叉排序树 226
8.2.2 平衡查找树 231
8.2.3 B树和B+树 237
8.2.4 堆排序 242
8.3 哈希表及其查找 244
8.3.1 哈希表 244
8.3.2 哈希函数的构造方法 245
8.3.3 解决冲突的方法 248
8.3.4 哈希表的查找 249
8.4 课程设计相关知识与应用示例 252
8.4.1 贪心算法 252
8.4.2 状态树 252
课后练习与课程设计 255
第9章 文件与外部排序 258
9.1 文件概述 258
9.2 文件组织 259
9.2.1 顺序文件 259
9.2.2 索引文件 260
9.2.3 哈希文件 262
9.2.4 多关键字文件 263
9.3 外部排序 265
9.3.1 2-路平衡归并排序法 265
9.3.2 多路平衡归并排序法 266
9.3.3 置换-选择排序 267
9.3.4 最优归并树 272
9.4 课程设计相关知识与应用示例 273
9.4.1 抽象数据类型 273
9.4.2 数据结构课程设计示例 274
课后练习与课程设计 276
参考文献 278