图书介绍

数据结构教程 Java语言描述2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

数据结构教程 Java语言描述
  • 朱振元,朱承,刘聆编著 著
  • 出版社: 西安:西安电子科技大学出版社
  • ISBN:7560608957
  • 出版时间:2007
  • 标注页数:343页
  • 文件大小:17MB
  • 文件页数:353页
  • 主题词:数据结构-高等学校-教材;JAVA语言-程序设计-高等学校-教材

PDF下载


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

下载说明

数据结构教程 Java语言描述PDF格式电子书版下载

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

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

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

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

图书目录

第1章 课程概论1

1.1 课程的初步认识1

1.2 数据结构的基本概念3

1.2.1 基本术语3

1.2.2 数据结构的概念3

1.2.3 逻辑结构和物理结构4

1.2.4 数据结构形式的定义4

1.3 数据类型及面向对象的概念5

1.3.1 数据类型概述5

1.3.2 抽象数据类型6

1.3.3 实现方法6

1.3.4 面向对象的概念8

1.4 算法及算法分析9

1.4.1 算法特性10

1.4.2 算法描述10

1.4.3 算法的设计要求11

1.4.4 算法分析11

习题114

第2章 线性表15

2.1 线性表的相关概念及抽象数据类型15

2.1.1 线性表的相关概念15

2.1.2 线性表抽象数据类型描述16

2.1.3 线性表的接口定义17

2.2 顺序表类18

2.2.1 顺序表的存储结构18

2.2.2 顺序表的类定义19

2.2.3 顺序表类的实现21

2.2.4 顺序表算法设计举例24

2.3 单链表类27

2.3.1 单链表的存储结构27

2.3.2 单链表的类定义28

2.3.3 单链表类的实现30

2.3.4 单链表算法设计举例34

2.4 双向循环链表类35

2.4.1 双向循环链表的存储结构35

2.4.2 双向循环链表的类定义36

2.4.3 双向循环链表类的实现38

2.5 线性表应用举例42

2.5.1 线性表功能演示程序42

2.5.2 进程调度模拟程序44

习题249

第3章 栈50

3.1 栈的相关概念及抽象数据类型50

3.1.1 栈的相关概念50

3.1.2 栈抽象数据类型描述51

3.1.3 栈的接口定义52

3.2 顺序栈类52

3.2.1 顺序栈的存储结构52

3.2.2 顺序栈的类定义及实现53

3.2.3 顺序栈算法设计举例55

3.3 链栈类56

3.3.1 链栈的存储结构57

3.3.2 链栈的类定义及实现57

3.3.3 链栈算法设计举例60

3.4 栈的应用举例61

3.4.1 括号配对问题61

3.4.2 表达式求值63

3.4.3 栈功能演示程序68

习题371

第4章 队列73

4.1 队列的相关概念及抽象数据类型73

4.1.1 队列的相关概念73

4.1.2 队列抽象数据类型描述74

4.1.3 队列的接口定义74

4.2 链队列类75

4.2.1 链队列的存储结构75

4.2.2 链队列的类定义及实现76

4.2.3 链队列算法设计举例79

4.3 循环队列类80

4.3.1 队列的顺序存储结构80

4.3.2 循环队列类的定义及实现83

4.3.3 循环队列算法设计举例85

4.4 队列的应用举例87

4.4.1 显示杨辉三角形87

4.4.2 表达式(逆波兰表示)求值90

4.4.3 循环队列功能演示程序93

习题496

第5章 串97

5.1 串的相关概念及抽象数据类型97

5.1.1 串的相关概念97

5.1.2 串抽象数据类型描述98

5.1.3 串的接口定义99

5.2 串的存储结构100

5.2.1 顺序存储结构100

5.2.2 链式存储结构101

5.2.3 堆存储结构101

5.3 串值不变的顺序串类Str1101

5.3.1 Str1的类定义102

5.3.2 求子串、定位操作的实现103

5.3.3 删除、插入及替换操作的实现106

5.3.4 Str1类算法设计举例108

5.4 串值可变的顺序串类Str2110

5.4.1 Str2类的定义110

5.4.2 Str2类的实现110

5.4.3 Str2类算法设计举例112

5.5 串的应用举例113

5.5.1 字符串类功能演示程序113

5.5.2 文本文件单词统计程序115

习题5117

第6章 数组、矩阵和集合118

6.1 数组118

6.1.1 数组的相关概念及抽象数据类型118

6.1.2 数组类的定义及实现119

6.2 矩阵概述121

6.2.1 矩阵的相关概念121

6.2.2 矩阵的存储方式122

6.3 矩阵类123

6.3.1 矩阵类的定义123

6.3.2 矩阵类的实现124

6.3.3 矩阵类算法设计举例127

6.4 矩阵的压缩存储128

6.4.1 对称矩阵的压缩存储128

6.4.2 对角矩阵的压缩存储129

6.4.3 稀疏矩阵的压缩存储130

6.5 稀疏矩阵类133

6.5.1 稀疏矩阵类的定义133

6.5.2 稀疏矩阵类的实现134

6.5.3 稀疏矩阵类算法设计举例137

6.6 集合138

6.6.1 集合的相关概念及抽象数据类型138

6.6.2 整数集合类139

6.7 应用举例142

6.7.1 在二维数组中存储对称矩阵142

6.7.2 整数集合类应用程序143

习题6144

第7章 递归算法146

7.1 递归的概念146

7.2 递归函数的设计方法148

7.2.1 由递归定义设计递归函数148

7.2.2 回溯法求解的一般模式150

7.3 算法设计举例150

7.4 递归算法的非递归化实现153

7.4.1 自底向上的递推153

7.4.2 为递归参数设置循环153

7.4.3 自顶向下的递推154

7.4.4 使用无标号递归工作栈155

7.5 递归算法应用举例157

7.5.1 方螺旋线求解程序157

7.5.2 八皇后问题求解程序160

7.5.3 迷宫问题演示程序162

习题7166

第8章 广义表167

8.1 广义表的相关概念及抽象数据类型167

8.1.1 广义表的相关概念167

8.1.2 广义表抽象数据类型描述168

8.2 广义表的存储方式169

8.2.1 头尾表示法169

8.2.2 儿子兄弟表示法171

8.3 广义表类的定义及实现172

8.3.1 广义表类的定义172

8.3.2 建立广义表的存储结构175

8.3.3 取头、取尾操作的实现178

8.3.4 插入、删除操作的实现179

8.4 广义表的递归算法179

8.4.1 广义表的相等比较179

8.4.2 广义表的成员判别180

8.4.3 求广义表的深度181

8.4.4 广义表递归算法设计举例182

8.5 广义表应用举例185

8.5.1 广义表演示程序185

8.5.2 LISP表达式求值187

习题8189

第9章 树与二叉树190

9.1 树的相关概念及抽象数据类型190

9.1.1 树的定义190

9.1.2 树的逻辑表示191

9.1.3 基本术语192

9.1.4 树抽象数据类型描述193

9.2 二叉树194

9.2.1 二叉树的定义及抽象数据类型194

9.2.2 二叉树的基本性质194

9.2.3 二叉树的存储结构196

9.2.4 二叉树类的定义198

9.2.5 二叉树类的实现201

9.2.6 二叉树的遍历204

9.2.7 二叉树算法设计举例208

9.3 排序二叉树209

9.3.1 排序二叉树的定义209

9.3.2 排序二叉树类的定义209

9.3.3 排序二叉树类的实现210

9.4 树与森林211

9.4.1 树的存储结构211

9.4.2 森林与二叉树的转换213

9.4.3 树的遍历214

9.5 哈夫曼树214

9.5.1 哈夫曼树的定义215

9.5.2 哈夫曼树的构造216

9.5.3 哈夫曼编码216

9.6 树的应用举例218

9.6.1 哈夫曼编码生成程序218

9.6.2 二叉树遍历演示程序221

习题9224

第10章 图226

10.1 图的相关概念及抽象数据类型226

10.1.1 图的定义226

10.1.2 基本术语228

10.1.3 图抽象数据类型描述230

10.2 图的存储方式230

10.2.1 邻接矩阵230

10.2.2 邻接链表232

10.2.3 邻接多重表234

10.3 图的遍历235

10.3.1 邻接链表图类235

10.3.2 深度优先搜索遍历237

10.3.3 广度优先搜索遍历238

10.3.4 算法设计举例240

10.4 图的应用242

10.4.1 拓扑排序242

10.4.2 最短路径246

10.5 图的应用程序设计举例249

10.5.1 图的遍历演示程序249

10.5.2 最短路径应用程序253

习题10254

第11章 查找256

11.1 查找的相关概念256

11.2 静态查找表257

11.2.1 顺序表的查找257

11.2.2 有序表的查找260

11.2.3 静态树表的查找263

11.2.4 索引顺序表的查找266

11.3 动态查找表267

11.3.1 排序二叉树的查找267

11.3.2 B-树与B+树272

11.4 哈希表277

11.4.1 哈希表的概念277

11.4.2 常用哈希函数279

11.4.3 冲突的处理方法281

11.4.4 哈希表的查找283

11.5 查找应用程序举例284

11.5.1 排序二叉树演示程序284

11.5.2 图书信息查询程序285

习题11289

第12章 排序291

12.1 排序的相关概念291

12.2 几种简单的排序算法293

12.2.1 直接插入排序293

12.2.2 冒泡排序295

12.2.3 直接选择排序297

12.3 几种快速的排序方法300

12.3.1 快速排序300

12.3.2 树型选择排序303

12.3.3 堆排序304

12.3.4 归并排序309

12.4 基数排序311

12.5 排序应用程序举例——排序算法演示程序314

习题12317

附录319

附录A Java语言概要(与C++语言比较)&319

附录B Java语言中的常用类323

附录C JBuilderX开发环境及操作步骤329

附录D 部分习题参考答案333

参考文献343

热门推荐