当前位置:首页 > 工业技术
实用数据结构
实用数据结构

实用数据结构PDF电子书下载

工业技术

  • 电子书积分:11 积分如何计算积分?
  • 作 者:林小茶编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2013
  • ISBN:9787302338284
  • 页数:274 页
图书介绍:本书为与计算机应用相关的专业量身定做,保留了经典数据结构的主要内容,但是做了一些必要的删减,以适应相对比较少的课时安排;同时,还选择得了一些实用性比较强的实例作为案例。在讲解数据的存储结构时,使用了大量的图示和表格,帮助学生对数据结构及相关算法的理解。
《实用数据结构》目录

第1章 概述 1

1.1 什么是数据结构 1

1.2 数据结构的相关概念和术语 5

1.3 算法 8

1.3.1 算法的概念 8

1.3.2 算法的特性 11

1.3.3 算法的描述方法——类C语言 12

1.4 算法分析 13

1.4.1 计算比较次数和移动次数 13

1.4.2 大O表示法及算法的时间复杂度 16

1.4.3 最好、最差和平均情况 18

1.4.4 算法的空间复杂度 19

本章小结 20

习题 20

第2章 栈与队列 23

2.1 栈 23

2.1.1 栈的实例 23

2.1.2 栈的基本概念 24

2.1.3 栈的顺序存储 25

2.1.4 顺序栈的基本算法 26

2.1.5 顺序栈的算法效率 30

2.1.6 栈的链式存储 30

2.1.7 单链栈的基本算法 32

2.1.8 链栈的算法效率 35

2.1.9 栈应用举例 35

2.2 队列 39

2.2.1 队列的实例 39

2.2.2 队列的基本概念 39

2.2.3 顺序队列的基本思想 40

2.2.4 环形队列的基本算法 43

2.2.5 环形队列的算法效率 47

2.2.6 用单链表存储队列的基本算法 47

2.2.7 链队列的算法效率 51

2.2.8 队列应用举例 51

本章小结 58

习题 59

第3章 线性表 64

3.1 线性表的定义 64

3.1.1 线性表实例 64

3.1.2 线性表的定义和基本操作 64

3.1.3 线性表的数学定义和逻辑图 65

3.2 线性表的顺序存储结构 66

3.3 顺序表基本算法实现 68

3.3.1 线性表内容与线性表长度分别存储的算法实现 68

3.3.2 线性表内容与线性表长度存储在一个结构体中的算法实现 75

3.4 顺序表的查找 78

3.4.1 顺序查找 79

3.4.2 二分查找 80

3.4.3 顺序查找与二分查找的效率分析 81

3.5 插入与删除操作的效率分析 82

3.5.1 在顺序表的第i个位置(逻辑位置)插入一个元素 82

3.5.2 插入算法的移动次数 84

3.5.3 删除算法的移动次数 84

3.6 顺序表应用举例 85

本章小结 92

习题 93

第4章 线性表的链式存储 97

4.1 线性表的链式存储结构 97

4.1.1 为什么要使用链式存储结构 97

4.1.2 单链表的数据定义 98

4.2 基于单链表的算法实现 99

4.2.1 单链表的基本算法实现 99

4.2.2 单链表中插入运算的进一步讨论 105

4.3 单链表应用举例 109

4.4 链式存储的其他方法 115

4.5 基于带表头结点的单循环链表算法实现 117

4.5.1 带表头结点的单循环链表的基本算法实现 117

4.5.2 带表头结点的单循环链表的应用举例 122

4.5.3 带表头结点与不带表头结点的单循环链表的比较 124

4.6 双向链表基本算法实现 126

4.7 顺序存储与链式存储方式的比较 132

本章小结 132

习题 133

第5章 哈希表与索引表 139

5.1 查找的基本概念 139

5.2 哈希表 140

5.2.1 哈希表的基本概念 140

5.2.2 冲突的产生 141

5.2.3 可以选择的哈希函数 142

5.2.4 解决冲突的方法 145

5.2.5 基本算法的实现 147

5.2.6 哈希表存储方法的性能分析 154

5.2.7 哈希表应用举例 155

5.3 索引表 157

5.3.1 索引表的构成 157

5.3.2 索引表的查找 159

5.3.3 分块查找 161

5.4 各种查找算法的效率分析 162

本章小结 163

习题 164

第6章 内排序 167

6.1 排序的基本概念 167

6.1.1 简单选择排序的算法思想和实现 167

6.1.2 排序的相关概念 169

6.2 插入排序 170

6.2.1 直接插入排序的算法思想和实现 170

6.2.2 折半插入排序思想和算法实现 173

6.2.3 希尔排序思想和算法实现 174

6.2.4 插入排序算法效率分析 177

6.3 交换排序 179

6.3.1 冒泡排序思想和算法实现 179

6.3.2 快速排序思想和算法实现 181

6.3.3 交换排序算法效率分析 185

6.4 归并排序 185

6.5 基数排序 188

6.6 各种排序算法的比较和分析 192

本章小结 193

习题 193

第7章 树与二叉树 197

7.1 树与二叉树的基本概念 197

7.1.1 树与二叉树实例 197

7.1.2 树与二叉树的定义 198

7.1.3 树与二叉树的相互转换 199

7.2 二叉树的基本操作和实现 200

7.2.1 二叉树的存储结构 200

7.2.2 二叉树的建立 203

7.2.3 二叉树的遍历 205

7.3 应用举例:堆排序 211

7.4 线索二叉树 215

7.5 哈夫曼树 218

7.5.1 哈夫曼树与哈夫曼编码 218

7.5.2 算法实现 220

7.6 二叉搜索树 223

7.6.1 二叉搜索树的定义 223

7.6.2 二叉搜索树基本操作实现 224

7.6.3 应用举例 230

本章小结 232

习题 233

第8章 图 239

8.1 图的基本概念 239

8.1.1 图的实例 239

8.1.2 图的定义和术语 240

8.2 图的存储结构 241

8.2.1 图的邻接矩阵表示 242

8.2.2 图的邻接表表示 245

8.2.3 图的十字链表表示 247

8.3 图的操作和实现 249

8.3.1 图的建立 249

8.3.2 图的遍历 254

8.4 图的应用——拓扑排序 260

8.4.1 拓扑排序的思想 260

8.4.2 拓扑排序的实现 263

8.5 图的应用——最小生成树 265

8.5.1 最小生成树的构造方法 265

8.5.2 构造最小生成树的算法实现 267

本章小结 270

习题 271

参考文献 274

相关图书
作者其它书籍
返回顶部