数据结构 C++语言描述PDF电子书下载
- 电子书积分:12 积分如何计算积分?
- 作 者:朱振元,朱承编著
- 出 版 社:北京:清华大学出版社
- 出版年份:2007
- ISBN:7302143135
- 页数:322 页
第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 实现方法 7
1.3.4 面向对象的概念 8
1.4.2 算法描述 10
1.4.1 算法特性 10
1.4 算法及算法分析 10
1.4.3 算法设计的要求 11
1.4.4 算法分析 12
实习题1 14
第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 顺序表类的实现 20
2.2.4 顺序表算法设计举例 23
2.3.1 单链表的存储结构 25
2.3 单链表类 25
2.3.2 单链表的类定义 26
2.3.3 单链表类的实现 28
2.3.4 单链表算法设计举例 32
2.4 静态链表类 33
2.4.1 静态链表的存储结构 33
2.4.2 静态链表的类定义 34
2.4.3 静态链表类的实现 35
2.5 双向循环链表类 38
2.5.1 双向循环链表的存储结构 38
2.5.2 双向循环链表的类定义 39
2.5.3 双向循环链表类的实现 40
2.6 线性表应用举例 43
2.6.1 线性表功能演示程序 43
2.6.2 进程调度模拟程序 46
实习题2 51
第3章 栈 52
3.1 栈的相关概念及抽象数据类型 52
3.1.1 栈的相关概念 52
3.1.2 栈抽象数据类型描述 53
3.1.3 栈的抽象类定义 54
3.2 顺序栈类 54
3.2.1 顺序栈的存储结构 55
3.2.2 顺序栈的类定义及实现 56
3.2.3 顺序栈算法设计举例 58
3.3 链栈类 58
3.3.1 链栈的存储结构 59
3.3.2 链栈的类定义及实现 59
3.3.3 链栈算法设计举例 62
3.4 栈的应用举例 63
3.4.1 括号配对问题 63
3.4.2 表达式求值 65
3.4.3 栈功能演示程序 70
实习题3 73
第4章 队列 74
4.1 队列的相关概念及抽象数据类型 74
4.1.1 队列的相关概念 74
4.1.2 队列抽象数据类型描述 75
4.1.3 队列的抽象类定义 75
4.2 链队列类 76
4.2.1 链队列的存储结构 76
4.2.2 链队列的类定义及实现 78
4.2.3 链队列算法设计举例 81
4.3 循环队列类 82
4.3.1 队列的顺序存储结构 82
4.3.2 循环队列类的定义及实现 84
4.3.3 循环队列算法设计举例 87
4.4 队列的应用举例 88
4.4.1 显示杨辉三角形 88
4.4.2 循环队列功能演示程序 91
实习题4 94
第5章 串 96
5.1 串的相关概念及抽象数据类型 96
5.1.1 串的相关概念 96
5.1.2 串抽象数据类型描述 97
5.1.3 串的抽象类定义 98
5.2 串的存储结构 99
5.2.1 顺序存储结构 99
5.2.2 链式存储结构 100
5.2.3 堆存储结构 101
5.3 设置长度的顺序串类Str1 101
5.3.1 Str1的类定义 101
5.3.2 求子串、定位操作的实现 102
5.3.3 删除、插入及替换操作的实现 105
5.3.4 Str1类算法设计举例 108
5.4 设置结束符的顺序串类Str2 109
5.4.1 Str2类的定义 109
5.4.2 Str2类的实现 110
5.4.3 Str2类算法设计举例 111
5.5 串的应用举例 113
5.5.1 字符串类功能演示程序 113
5.5.2 文本文件单词统计程序 115
实习题5 117
第6章 数组、矩阵和集合 118
6.1 数组 118
6.1.1 数组的相关概念及抽象数据类型 118
6.1.2 数组类的定义及实现 119
6.2.1 矩阵的相关概念 121
6.2 矩阵概述 121
6.2.2 矩阵的存储方式 122
6.3 矩阵类 123
6.3.1 矩阵类的定义 123
6.3.2 矩阵类的实现 123
6.3.3 矩阵类算法设计举例 126
6.4 矩阵的压缩存储 128
6.4.1 对称矩阵的压缩存储 128
6.4.2 对角矩阵的压缩存储 128
6.4.3 稀疏矩阵的压缩存储 129
6.5 稀疏矩阵类 132
6.5.1 稀疏矩阵类的定义 132
6.5.2 稀疏矩阵类的实现 133
6.6 集合 136
6.6.1 集合的相关概念及抽象数据类型 136
6.6.2 整数集合类 138
6.7.1 整数集合类应用程序 140
6.7 应用举例 140
6.7.2 八皇后演示程序 141
实习题6 146
第7章 广义表 147
7.1 广义表的相关概念及抽象数据类型 147
7.1.1 广义表的相关概念 147
7.1.2 广义表抽象数据类型描述 149
7.2 广义表的存储方式 149
7.2.1 头尾表示法 150
7.2.2 儿子兄弟表示法 151
7.3 广义表类的定义及实现 152
7.3.1 广义表类的定义 152
7.3.2 建立广义表的存储结构 153
7.3.4 插入、删除操作的实现 157
7.3.3 取头、取尾操作的实现 157
7.4 广义表的递归算法 158
7.4.1 广义表的相等比较 158
7.4.2 广义表的成员判别 159
7.4.3 求广义表的深度 160
7.4.4 广义表递归算法设计举例 161
7.5 广义表应用举例 164
7.5.1 广义表演示程序 164
7.5.2 LISP表达式求值 166
实习题7 168
第8章 树与二叉树 169
8.1 树的相关概念及抽象数据类型 169
8.1.1 树的定义 169
8.1.2 树的逻辑表示 170
8.1.3 基本术语 171
8.1.4 树抽象数据类型描述 172
8.2 二叉树 173
8.2.1 二叉树的定义及抽象数据类型 173
8.2.2 二叉树的基本性质 174
8.2.3 二叉树的存储结构 176
8.2.4 二叉树类的定义 178
8.2.5 二叉树类的实现 179
8.2.6 二叉树的遍历 184
8.2.7 二叉树算法设计举例 187
8.3 排序二叉树 189
8.3.1 排序二叉树的定义 189
8.3.2 排序二叉树类的定义 189
8.3.3 排序二叉树类的实现 190
8.4.1 树的存储结构 191
8.4 树与森林 191
8.4.2 森林与二叉树的转换 193
8.4.3 树的遍历 194
8.5 哈夫曼树 194
8.5.1 哈夫曼树的定义 194
8.5.2 哈夫曼树的构造 195
8.5.3 哈夫曼编码 196
8.6 树的应用举例 198
8.6.1 哈夫曼编码生成程序 198
8.6.2 二叉树遍历演示程序 201
实习题8 205
第9章 图 206
9.1 图的相关概念及抽象数据类型 206
9.1.1 图的定义 206
9.1.2 基本术语 208
9.2.1 邻接矩阵 210
9.2 图的存储方式 210
9.1.3 图抽象数据类型描述 210
9.2.2 邻接链表 212
9.2.3 邻接多重表 214
9.3 图的遍历 215
9.3.1 邻接链表图类 215
9.3.2 深度优先搜索遍历 217
9.3.3 广度优先搜索遍历 219
9.3.4 算法设计举例 221
9.4 图的应用 222
9.4.1 拓扑排序 222
9.4.2 最短路径 227
9.5 图的应用程序设计举例 229
9.5.1 图的遍历演示程序 229
9.5.2 最短路径应用程序 233
实习题9 235
10.1 查找的相关概念 236
第10章 查找 236
10.2 静态查找表 237
10.2.1 顺序表的查找 237
10.2.2 有序表的查找 240
10.2.3 静态树表的查找 243
10.2.4 索引顺序表的查找 246
10.3 动态查找表 247
10.3.1 排序二叉树的查找 247
10.3.2 B-树与B+树 252
10.4 哈希表 257
10.4.1 哈希表的概念 257
10.4.2 常用哈希函数 259
10.4.3 冲突的处理方法 261
10.4.4 哈希表的查找 263
10.5.1 排序二叉树演示程序 264
10.5 查找应用程序举例 264
10.5.2 图书信息查询程序 265
实习题10 269
第11章 排序 270
11.1 排序的相关概念 270
11.2 几种简单的排序算法 272
11.2.1 直接插入排序 272
11.2.2 冒泡排序 274
11.2.3 直接选择排序 276
11.3 几种快速的排序方法 279
11.3.1 快速排序 279
11.3.2 树形选择排序 282
11.3.3 堆排序 283
11.3.4 归并排序 288
11.4 基数排序 290
11.5 排序应用程序举例——排序算法演示程序 293
实习题11 297
第12章 外部排序 298
12.1 外部排序概述 298
12.2 多路归并排序 299
12.2.1 多路归并与败者树 299
12.2.2 败者树相关的数据结构 300
12.2.3 调整算法 301
12.2.4 初建树算法 302
12.2.5 k路归并算法 303
12.3 置换选择排序 305
附录A C++语言概要 308
附录B C++ Builder开发环境及操作步骤 313
附录C 部分实习题参考答案 316
参考文献 323
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《联吡啶基钌光敏染料的结构与性能的理论研究》李明霞 2019
- 《异质性条件下技术创新最优市场结构研究 以中国高技术产业为例》千慧雄 2019
- 《数据库技术与应用 Access 2010 微课版 第2版》刘卫国主编 2020
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《大数据Hadoop 3.X分布式处理实战》吴章勇,杨强 2020
- 《Power BI数据清洗与可视化交互式分析》陈剑 2020
- 《数据失控》(美)约翰·切尼-利波尔德(John Cheney-Lippold)著 2019
- 《幼儿园课程资源丛书 幼儿园语言教育资源》周兢编 2015
- 《中国生态系统定位观测与研究数据集 森林生态系统卷 云南西双版纳》邓晓保·唐建维 2010
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019