1. 首页 > 经验  > 正文

数据结构实用教程(Java语言描述)

数据结构实用教程(Java语言描述)

《数据结构实用教程(Java语言描述)》是为全国高等院校计算机及相关专业开设数据结构课程而精心编着的一本实用教材。

基本介绍

书名:数据结构实用教程(Java语言描述)作者:徐孝凯ISBN:9787302307020页数:331定价:35元出版社:清华大学出版社出版时间:2013-1-1装帧:平装开本:16版次:1

图书简介

本书是为全国高等院校计算机及相关专业开设数据结构课程而精心编着的一本实用教材。本书按照面向对象的程式设计方法,採用目前广泛使用的Java语言描述各种数据结构和运算方法,使得一种数据结构对应一种操作接口,进而通过不同的存储类型实现。全书共分为11章,依次为绪论、集合线性表、稀疏矩阵和广义表、栈和伫列、树和二叉树、常用二叉树、图、图的套用、查找排序
全书内容丰富实用,结构层次分明,叙述简明易懂,运算方法分析透彻,所有算法描述都能够直接上机运行。这些显着特点都是作者多年来教材编写和教学经验的结晶,已经得到广大读者的认可。
本书可作为普通高等院校计算机及相关专业“数据结构”课程的教材或教学参考书。
为了配合使用本书,作者同时编写了相配套的《数据结构实用教程(Java语言描述)习题参考解答》一书,一併出版。

图书目录

第1章绪论 1
1.1基本概念 1
1.2算法描述 11
1.3算法评价 13
第2章集合 20
2.1集合的定义和运算 20
2.1.1集合的定义 20
2.1.2集合的抽象数据类型 20
2.1.3集合运算举例 21
2.2集合的顺序存储结构和操作实现 23
2.3集合的连结存储结构和操作实现 30
2.3.1连结存储的概念 30
2.3.2连结集合类的定义和实现 33
2.4集合套用举例 39
第3章线性表 47
3.1线性表的定义和运算 47
3.1.1线性表的定义 47
3.1.2线性表的抽象数据类型 48
3.1.3线性表运算举例 49
3.2线性表的顺序存储结构和操作实现 52
3.3有序线性表的定义和实现 60
3.4连结存储的一般概念和方法 65
3.5线性表的连结存储结构和操作实现 70
3.6有序线性表的连结存储结构和操作实现 76
3.7线性表套用举例——多项式计算 78
3.7.1多项式表示与求值 78
3.7.2两个多项式相加 82
第4章稀疏矩阵和广义表 86
4.1稀疏矩阵 86
4.1.1稀疏矩阵的定义 86
4.1.2稀疏矩阵的转置运算 88
4.1.3稀疏矩阵的加法运算 90
4.1.4使用稀疏矩阵的程式举例 92
4.2广义表 94
4.2.1广义表的定义 94
4.2.2广义表的存储结构 96
4.2.3广义表类的定义 97
4.2.4广义表的运算 99
4.2.5简单程式举例 103
第5章栈和伫列 105
5.1栈的定义和运算 105
5.2栈的顺序存储结构和操作实现 106
5.3栈的连结存储结构和操作实现 110
5.4栈的简单套用举例 112
5.5算术表达式的计算 116
5.6栈与递归 124
5.7伫列 133
5.7.1伫列的定义和运算 133
5.7.2伫列的顺序存储结构和操作实现 134
5.7.3伫列的连结存储结构和操作实现 139
第6章树和二叉树 141
6.1树的概念 141
6.1.1树的定义 141
6.1.2树的表示 142
6.1.3树的基本术语 142
6.1.4树的性质 144
6.2二叉树 145
6.2.1二叉树的定义 145
6.2.2二叉树的性质 145
6.2.3二叉树的抽象数据类型 147
6.2.4二叉树的存储结构 148
6.3二叉树遍历 153
6.4二叉树的其他运算 156
6.5调试二叉树算法举例 160
6.6树的存储结构和运算 161
6.6.1树的抽象数据类型 161
6.6.2树的存储结构 162
6.6.3树的运算 166
6.6.4调试普通树算法举例 171
第7章常用二叉树 173
7.1二叉搜寻树 173
7.1.1二叉搜寻树的定义 173
7.1.2二叉搜寻树的抽象数据类型和连结存储类 174
7.1.3二叉搜寻树的运算方法 175
7.2堆 181
7.2.1堆的定义 181
7.2.2堆的接口类 182
7.2.3堆的存储结构和顺序存储类 182
7.2.4堆的运算 184
7.3哈夫曼树 189
7.3.1基本术语 189
7.3.2构造哈夫曼树 190
7.3.3哈夫曼编码 193
7.4平衡二叉树 195
7.4.1平衡二叉树的定义 195
7.4.2平衡二叉树的调整 197
第8章图 202
8.1图的概念 202
8.1.1图的定义 202
8.1.2图的基本术语 203
8.2图的存储结构 205
8.2.1邻接矩阵 205
8.2.2邻接表 207
8.2.3边集数组 208
8.3图的抽象数据类型和接口类 209
8.4图的邻接矩阵和邻接表存储类 210
8.5图的遍历 214
8.5.1深度优先搜寻遍历 214
8.5.2广度优先搜寻遍历 217
8.5.3非连通图的遍历 219
8.6对图的其他运算的算法 219
第9章图的套用 231
9.1图的生成树和最小生成树 231
9.1.1生成树的概念 231
9.1.2普里姆算法 233
9.1.3克鲁斯卡尔算法 237
9.2最短路径 240
9.2.1最短路径的概念 240
9.2.2从一顶点到其余各顶点的最短路径 241
9.2.3每对顶点之间的最短路径 246
9.3拓扑排序 250
9.3.1拓扑排序的概念 250
9.3.2拓扑排序算法 252
9.4关键路径 256
第10章查找 264
10.1查找的基本概念 264
10.2顺序表查找 265
10.2.1顺序查找 265
10.2.2二分查找 267
10.3索引查找 269
10.3.1索引的概念 269
10.3.2索引存储举例 270
10.3.3索引查找算法 273
10.3.4分块查找 274
10.4散列查找 276
10.4.1散列的概念 276
10.4.2散列函式 278
10.4.3处理冲突的方法 280
10.4.4散列表的运算 284
10.5B树查找 293
10.5.1B_树的定义 293
10.5.2B_树查找 294
10.5.3B_树的插入 296
10.5.4B_树的删除 299
10.5.5定义B_树的类 302
10.5.6B+树简介 304
第11章排序 306
11.1排序的基本概念 306
11.2插入排序 308
11.3选择排序 309
11.3.1直接选择排序 309
11.3.2堆排序 310
11.4交换排序 313
11.4.1气泡排序 314
11.4.2快速排序 315
11.5归併排序 318
11.6外排序 322
11.6.1外排序的概念 322
11.6.2外排序算法 323
参考文献 332

本文由'一只奕诺呀'发布,不代表演示站立场,转载/删除联系作者,如需删除请-> 关于侵权处理说明