《数据结构教程 Java语言描述》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:徐孝凯主编
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2010
  • ISBN:9787302226598
  • 页数:310 页
图书介绍:本书内容共8章,主要内容包括:绪论、集合、线性表、栈和队列、舒赫尔茶树、图、查找、排序等。前后连贯并相互呼应。

第1章 绪论 1

1.1 基本概念 1

1.2 算法描述 11

1.3 算法评价 13

本章小结 19

习题1 20

第2章 集合 24

2.1 集合的定义和运算 24

2.1.1 集合的定义 24

2.1.2 集合的抽象数据类型 25

2.1.3 集合运算举例 26

2.2 集合的顺序存储结构和操作实现 27

2.3 集合的链接存储结构和操作实现 34

2.3.1 链接存储的概念 34

2.3.2 链接集合类的定义和实现 36

2.4 集合应用举例 42

本章小结 49

习题2 49

第3章 线性表 52

3.1 线性表的定义和运算 52

3.1.1 线性表的定义 52

3.1.2 线性表的抽象数据类型 53

3.1.3 线性表运算举例 55

3.2 线性表的顺序存储和操作实现 56

3.3 有序线性表的定义和实现 65

3.4 链接存储的一般概念和方法 70

3.5 线性表的链接存储和操作实现 74

3.6 有序线性表的链接存储和操作实现 81

3.7 多项式计算 84

3.7.1 多项式表示与求值 84

3.7.2 两个多项式相加 87

3.8 稀疏矩阵 90

3.8.1 稀疏矩阵的定义 90

3.8.2 稀疏矩阵的转置运算 93

3.8.3 稀疏矩阵的加法运算 95

本章小结 99

习题3 100

第4章 栈和队列 108

4.1 栈的定义和运算 108

4.1.1 栈的定义 108

4.1.2 栈的抽象数据类型 109

4.1.3 栈的运算举例 109

4.2 栈的顺序存储结构和操作实现 110

4.3 栈的链接存储结构和操作实现 113

4.4 栈的简单应用举例 115

4.5 栈与递归 119

4.6 算术表达式的计算 127

4.6.1 算术表达式的两种表示 127

4.6.2 后缀表达式求值的算法 128

4.6.3 把中缀表达式转换为后缀表达式的算法 131

4.7 队列 134

4.7.1 队列的定义 134

4.7.2 队列的抽象数据类型 135

4.7.3 队列的顺序存储结构和操作实现 136

4.7.4 队列的链接存储结构和操作实现 141

本章小结 142

习题4 143

第5章 树和二叉树 147

5.1 树的概念 147

5.1.1 树的定义 147

5.1.2 树的表示 148

5.1.3 树的基本术语 148

5.1.4 树的性质 149

5.2 二叉树 151

5.2.1 二叉树的定义 151

5.2.2 二叉树的性质 151

5.2.3 二叉树的抽象数据类型 153

5.2.4 二叉树的存储结构 154

5.3 二叉树遍历 159

5.4 二叉树其他运算 162

5.5 二叉搜索树 167

5.5.1 二叉搜索树的定义 167

5.5.2 二叉搜索树的抽象数据类型和链接存储类 167

5.5.3 二叉搜索树的运算方法 168

5.6 堆 175

5.6.1 堆的定义 175

5.6.2 堆的抽象数据类型和接口类 176

5.6.3 堆的存储结构和顺序存储类 177

5.6.4 堆的运算 178

本章小结 182

习题5 183

第6章 图 188

6.1 图的概念 188

6.1.1 图的定义 188

6.1.2 图的基本术语 189

6.2 图的存储结构 192

6.2.1 邻接矩阵 192

6.2.2 邻接表 193

6.2.3 边集数组 195

6.3 图的抽象数据类型和接口类 196

6.4 图的邻接矩阵和邻接表存储类 197

6.5 图的遍历 199

6.5.1 深度优先搜索遍历 200

6.5.2 广度优先搜索遍历 202

6.5.3 非连通图的遍历 204

6.6 对图的其他运算的算法 205

6.7 图的生成树和最小生成树 215

6.7.1 生成树的概念 215

6.7.2 普里姆算法 217

6.7.3 克鲁斯卡尔算法 221

本章小结 225

习题6 225

第7章 查找 229

7.1 查找的基本概念 229

7.2 顺序表查找 230

7.2.1 顺序查找 231

7.2.2 二分查找 232

7.3 索引查找 235

7.3.1 索引的概念 235

7.3.2 索引查找算法 238

7.4 散列查找 240

7.4.1 散列的概念 240

7.4.2 散列函数 241

7.4.3 处理冲突的方法 243

7.4.4 散列表的运算 247

7.5 B树查找 256

7.5.1 B_树的定义 256

7.5.2 B_树查找 257

7.5.3 B_树的插入 259

7.5.4 B_树的删除 263

7.5.5 定义B_树的类 264

本章小结 267

习题7 268

第8章 排序 272

8.1 排序的基本概念 272

8.2 插入排序 274

8.3 选择排序 275

8.3.1 直接选择排序 275

8.3.2 堆排序 276

8.4 交换排序 280

8.4.1 气泡排序 280

8.4.2 快速排序 282

8.5 归并排序 285

8.6 外排序 289

8.6.1 外排序概念 289

8.6.2 外排序算法 290

本章小结 298

习题8 299

附录A 习题中部分算法设计题参考解答 302

参考文献 310