图书介绍

数据结构pdf电子书版本下载

数据结构
  • 唐发根编著 著
  • 出版社: 北京:科学出版社
  • ISBN:7030068157
  • 出版时间:1998
  • 标注页数:287页
  • 文件大小:20MB
  • 文件页数:298页
  • 主题词:

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快] 温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页 直链下载[便捷但速度慢]   [在线试读本书]   [在线获取解压码]

下载说明

数据结构PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第一章 绪论 1

1.1 什么是数据结构 1

1.2 数据结构的发展简史及其在计算机科学中的地位 4

1.3 算法 5

1.3.1 算法及其性质 5

1.3.2 基本算法 6

1.3.3 算法的描述 7

1.4 SPARKS语言简介 9

1.4.1 算法格式 9

1.4.2 语句 9

1.5 算法分析 13

1.5.1 时间复杂度 14

1.5.2 空间复杂度 15

1.5.3 其他方面 16

1.6 算法设计的基本步骤 16

习题 17

第二章 线性表 19

2.1 线性表及其基本运算 19

2.1.1 线性表的定义 19

2.1.2 线性表的基本运算 20

2.2 线性表的顺序存储结构 21

2.3 线性表的链式存储结构 24

2.3.1 线性链表 24

2.3.2 线性链表的有关算法 26

2.4 循环链表及其运算 33

2.5.1 双向链表的构造 36

2.5 双向链表及其运算 36

2.5.2 双向链表的插入与删除算法 38

2.6 链表的应用举例 39

2.6.1 链式存储结构下的一元多项式加法 39

2.6.2 动态存储管理 42

习题 48

第三章 数组 51

3.1 数组的概念 51

3.1.1 一维数组 51

3.1.2 多维数组 51

3.2 数组的存储结构 52

3.3.1 对称矩阵的压缩存储 54

3.3 矩阵的压缩存储 54

3.3.2 对角矩阵的压缩存储 55

3.4 稀疏矩阵的三元组表示 55

*3.5 稀疏矩阵的十字链表表示 61

3.6 数组的应用举例 65

3.6.1 一元多项式的数组表示 65

3.6.2 n阶魔方 66

习题 67

第四章 堆栈和队列 69

4.1 堆栈的概念及其运算 69

4.1.1 堆栈的定义 69

4.2 堆栈的顺序存储结构 70

4.1.2 堆栈的有关运算 70

4.3 堆栈的链式存储结构 74

4.4 堆栈的应用举例 75

4.4.1 堆栈在递归中的应用 75

4.4.2 表达式的计算 79

4.4.3 一个趣味游戏——迷宫问题 83

4.5 队列的概念及其运算 86

4.5.1 队列的定义 86

4.5.2 队列的有关运算 86

4.6 队列的顺序存储结构 87

4.7 队列的链式存储结构 91

习题 93

5.1 广义表的概念 95

第五章 广义表 95

5.2 广义表的存储结构 96

*5.3 多元多项式的表示 98

习题 99

第六章 串 100

6.1 串的概念 100

6.1.1 串的定义 100

6.1.2 串的几个概念 101

6.2 串的基本运算 101

6.3 串的存储结构 102

6.3.1 串的顺序存储结构 102

6.3.2 串的链式存储结构 103

6.4 串的几个运算 104

习题 109

第七章 树与二叉树 110

7.1 树的基本概念 110

7.1.1 树的定义 110

7.1.2 树的逻辑表示方法 112

7.1.3 基本术语 112

7.1.4 树的性质 113

7.1.5 树的基本运算 114

7.2 树的存储结构 115

7.2.1 多重链表表示法 115

7.3 二叉树 116

7.2.2 三重链表表示法 116

7.3.1 二叉树的定义 117

7.3.2 二叉树的基本运算 117

7.3.3 满二叉树与完全二叉树 118

7.3.4 二叉树的性质 118

7.3.5 二叉树与树、树林之间的转换 120

7.4 二叉树的存储结构 122

7.4.1 二叉树的顺序存储结构 122

7.4.2 二叉树的链式存储结构 123

7.5 树的遍历 126

7.5.1 二叉树的遍历 126

7.5.2 树和树林的遍历 133

7.5.3 由遍历序列恢复二叉树 134

7.6 线索二叉树 135

7.6.1 线索二叉树的构造 135

7.6.2 线索二叉树的利用 136

*7.6.3 二叉树的线索化算法 139

*7.6.4 线索树的更新 139

7.7 二叉排序树 140

7.7.1 二叉排序树的定义 140

7.7.2 二叉排序树的构造 140

7.7.3 在二叉排序树中删除结点 143

7.7.4 二叉排序树的查找 145

*7.8 平衡二叉树 147

7.9.1 哈夫曼树的概念 153

7.9哈夫曼树及其应用 153

*7.9.2 哈夫曼编码 155

习题 158

第八章 图 161

8.1 图的基本概念 161

8.1.1 图的定义和基本术语 161

8.1.2 图的基本运算 164

8.2 图的存储方法 164

8.2.1 邻接矩阵存储方法 165

8.2.2 邻接表存储方法 166

*8.2.3 有向图的十字链表存储方法 169

*8.2.4 无向图的多重邻接表存储方法 170

8.3.1 深度优先搜索 171

8.3 图的遍历 171

8.3.2 广度优先搜索 173

8.4 最小生成树 174

8.5 最短路径问题 178

8.6 AOV网与拓扑排序 181

8.6.1 AOV网 181

8.6.2 拓扑排序 182

8.6.3 拓扑排序算法 183

8.7 AOE网与关键路径 186

8.7.1 AOE网 186

8.7.2 关键路径 187

8.7.3 关键路径的确定 187

习题 191

第九章 文件及查找 194

9.1 文件概述 194

9.1.1 文件的基本术语 194

9.1.2 文件的存储介质 195

9.1.3 文件的基本操作 196

9.2 顺序文件 197

9.2.1 连续顺序文件 198

9.2.2 链接顺序文件 201

9.3 索引文件 201

9.3.1 稠密索引文件 201

9.3.2 非稠密索引文件 201

9.3.3 多级索引文件 203

9.4 B-树和B+树 204

9.4.1 B-树概述 204

9.4.2 B-树的基本操作 205

9.4.3 B+树的概念 210

9.4.4 B+树的基本操作 211

9.5 杂凑(Hash)文件 212

9.5.1 概述 212

9.5.2 杂凑函数的几种构造方法 213

9.5.3 处理冲突的方法 214

9.5.4 杂凑文件的操作 216

*9.6 多重链表文件 218

*9.5.5 散列法的平均查找长度 218

*9.7 倒排文件 219

习题 220

第十章 内排序 222

10.1 概述 222

10.1.1 排序的概念 222

10.1.2 排序的分类 222

10.2 插入排序 223

10.3 选择排序 225

10.4 泡排序 227

10.5 谢尔排序 228

10.6 快速排序 229

10.7.1 堆积的定义 231

10.7 堆积排序 231

10.7.2 堆积排序算法 232

10.8 二路归并排序 236

10.8.1 归并子算法 236

10.8.2 一趟归并扫描子算法 237

10.8.3 二路归并排序算法 238

*10.9 基数排序 239

10.10 各种内排序算法的比较 242

10.10.1 稳定性比较 242

10.10.2 复杂性比较 242

习题 243

11.1 概述 247

*第十一章 外排序 247

11.2 磁带排序 248

11.2.1 多路平衡归并排序法 248

11.2.2 多步归并排序 250

11.3 初始归并段的合理分布与产生 251

11.3.1 初始归并段的合理分布 251

11.3.2 一种产生初始归并段的方法——置换选择排序 252

11.4 磁盘排序 254

11.4.1 最佳归并树 254

习题 257

上机实践题 259

部分习题参考答案 261

附录 北京市高等教育学历文凭考试“数据结构”课程考试大纲 282

参考文献 288

精品推荐