当前位置:首页 > 工业技术
数据结构 Java语言版
数据结构 Java语言版

数据结构 Java语言版PDF电子书下载

工业技术

  • 电子书积分:10 积分如何计算积分?
  • 作 者:王学军主编
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2008
  • ISBN:9787115185778
  • 页数:244 页
图书介绍:本书共分10章,重点介绍3种基本数据结构及其应用,主要内容包括绪论、Java语言基础知识、线性表、数组与广义表、串、树与二叉树、图、查找与排序等。本书采用Java语言描述数据结构中的算法,每章配有一定数量的具有完整程序的实例,并在最后提供难易适中、与所讲理论知识相配套的习题,帮助读者学习和理解理论知识。本书面向高等职业院校学生,语言通俗易懂,每章都由实例引入,理论和实践紧密结合。全书重点突出基本理论和基本算法的实现过程,强调实践性和实用性。另外本书配有电子教案和习题解答,可从人民邮电出版社网站(www.ptpress.com.cn)下载。
上一篇:应用密码学下一篇:电工技术
《数据结构 Java语言版》目录

第1章 绪论 1

1.1 数据结构的3种基本结构 1

1.1.1 线性结构 1

1.1.2 层次结构 3

1.1.3 网状结构 4

1.2 数据结构研究的主要问题 6

1.3 算法及描述 7

1.3.1 算法与算法特性 7

1.3.2 算法表示 8

1.4 算法效率分析 10

习题 11

第2章 Java语言基础知识 13

2.1 实例引入 13

2.2 Java语言概述 14

2.3 面向对象程序设计简述 14

2.3.1 面向对象程序设计的基本概念 15

2.3.2 面向对象程序设计的基本特征 15

2.4 Java语言基础知识 16

2.4.1 数据类型 17

2.4.2 运算符 18

2.4.3 流程控制 18

2.4.4 数组 21

2.4.5 类与对象 23

2.4.6 类的封装性 26

2.4.7 类的继承性 27

2.4.8 类的多态性 27

2.4.9 抽象类和内部类 28

2.4.10 接口 29

2.4.11 包 29

2.4.12 异常处理 31

2.4.13 Java标准数据流 33

2.5 Java语言中的“指针”实现 35

2.6 JDK1.5新增特性 38

2.6.1 泛型 39

2.6.2 增强的集合遍历结构 39

2.6.3 自动装箱/拆箱 39

2.6.4 枚举类型 40

2.6.5 静态import 40

2.6.6 从终端读取数据 41

2.6.7 格式化输出 41

2.6.8 可变参数 41

习题 42

第3章 线性表 44

3.1 实例引入 44

3.2 线性表的概述 45

3.2.1 线性表的概念 45

3.2.2 线性表的存储结构及操作 46

3.3 顺序表的基本操作及实现 46

3.3.1 顺序表的概述 46

3.3.2 顺序表的基本操作及实现 47

3.4 链表的基本操作及实现 50

3.4.1 链表 50

3.4.2 链表的分类 52

3.4.3 单链表的基本运算及实现 53

3.4.4 其他形式的链表的相关运算 54

3.4.5 算法实例 55

3.5 线性表的应用 56

3.5.1 顺序表的连接 56

3.5.2 字符串的逆转算法 57

习题 60

第4章 栈和队列 61

4.1 实例引入 61

4.2 栈的相关概述 62

4.2.1 栈的定义 62

4.2.2 栈的相关概念 62

4.2.3 栈的操作过程 62

4.2.4 栈的存储结构 64

4.3 用数组实现顺序栈及操作 65

4.4 用类实现链式栈及相应操作 67

4.5 队列的相关概述 70

4.5.1 队列的定义 70

4.5.2 队列的相关概念 70

4.5.3 队列的存储结构 70

4.6 用数组实现顺序队列及相应操作 71

4.7 用类实现链队列及相应操作 74

4.8 栈和队列的实例应用 76

习题 81

第5章 数组和广义表 82

5.1 实例引入 82

5.2 数组 83

5.2.1 数组的基本概念 83

5.2.2 一维数组 84

5.2.3 二维数组 84

5.3 特殊矩阵 88

5.3.1 对称矩阵 89

5.3.2 三角矩阵 90

5.3.3 对角矩阵 91

5.4 稀疏矩阵 91

5.5 广义表 98

5.5.1 广义表的概念 98

5.5.2 广义表的存储结构 100

习题 100

第6章 串 102

6.1 实例引入 102

6.2 串的概述 103

6.3 串的顺序存储结构 104

6.3.1 通过String类处理串 104

6.3.2 通过StringBuffer类处理串 106

6.4 串的链式存储结构 108

6.4.1 链串的实现 108

6.4.2 链串基本算法 109

习题 111

第7章 树与二叉树 113

7.1 实例引入 113

7.2 树 114

7.2.1 树的定义 114

7.2.2 树的表示方法 115

7.2.3 树的抽象数据类型 116

7.2.4 树的存储结构 117

7.3 二叉树 119

7.3.1 二叉树的定义 119

7.3.2 二叉树的性质 120

7.3.3 二叉树的抽象数据类型 122

7.3.4 二叉树的存储结构 122

7.4 二叉树的节点类及二叉树类 124

7.4.1 二叉树节点类 124

7.4.2 二叉树类 125

7.5 二叉树的遍历 126

7.5.1 二叉树遍历算法 126

7.5.2 二叉树遍历算法的实现 127

7.5.3 非递归的二叉树遍历算法 129

7.5.4 二叉树遍历的应用 130

7.6 线索二叉树 131

7.6.1 线索二叉树的定义 132

7.6.2 线索二叉树的存储结构 132

7.6.3 遍历线索二叉树 133

7.6.4 构造中序线索二叉树 134

7.7 树和森林 135

7.7.1 树、森林与二叉树的转换 135

7.7.2 树和森林的遍历 137

7.8 树的应用 138

7.8.1 二叉排序树 138

7.8.2 哈夫曼树和哈夫曼编码 144

7.8.3 判定树 152

习题 154

第8章 图 156

8.1 实例引入 156

8.2 图的基本概念 157

8.2.1 图的定义 157

8.2.2 图的相关概念 159

8.3 图的存储结构 162

8.3.1 邻接矩阵 162

8.3.2 邻接表 164

8.4 图的遍历 165

8.4.1 深度优先搜索遍历 165

8.4.2 广度优先搜索遍历 169

8.5 生成树和最小生成树 173

8.5.1 生成树 173

8.5.2 Kruskal算法 174

8.5.3 Prim算法 175

8.6 最短路径问题 177

8.7 拓扑排序 183

8.7.1 有向无环图 183

8.7.2 拓扑排序 183

8.8 AOE网与关键路径 187

8.8.1 AOE网 187

8.8.2 关键路径 187

8.9 综合示例 191

习题 200

第9章 查找 203

9.1 实例引入 203

9.2 基本概念与术语 205

9.2.1 查找的概念 205

9.2.2 查找方法 205

9.3 顺序查找法 205

9.4 折半查找法 207

9.5 二叉排序树法 209

9.6 哈希查找法 213

9.6.1 哈希查找概念 214

9.6.2 哈希函数 215

9.6.3 冲突解决方法 217

9.7 应用实例 219

习题 222

第10章 排序 224

10.1 实例引入 224

10.2 排序的概念 225

10.3 排序的分类 225

10.3.1 按照存储交换分类 225

10.3.2 按照内部排序的过程分类 226

10.3.3 按照排序的稳定性分类 226

10.4 插入排序 226

10.4.1 直接插入排序 226

10.4.2 希尔排序 228

10.5 交换排序 230

10.5.1 冒泡排序 230

10.5.2 快速排序 231

10.6 选择排序 233

10.6.1 直接选择排序 233

10.6.2 堆排序 234

10.7 其他排序 236

10.7.1 归并排序 237

10.7.2 基数排序 238

10.8 排序的工程应用举例 240

习题 242

参考文献 244

返回顶部