数据结构实用教程PDF电子书下载
- 电子书积分:10 积分如何计算积分?
- 作 者:孙涌编著
- 出 版 社:北京:清华大学出版社
- 出版年份:2006
- ISBN:7302121362
- 页数:237 页
目录 1
第1章 数据结构概论 1
1.1 数据结构与软件从业人员的未来发展 2
1.1.1 软件的可重用模型 2
1.1.2 数据结构在软件项目开发中的关键作用 2
1.1.3 数据结构与岗位分工 3
1.1.4 数据结构的重要地位与课程学习方法 4
1.2.1 数据结构基础 6
1.2 数据结构综述 6
1.2.2 常用数据结构说明 7
1.2.3 数据结构的实现基础 9
1.3 算法综述 10
1.3.1 算法初步 10
1.3.2 算法的构造 11
1.3.3 算法复杂度 13
1.3.4 基于递归的算法设计思想 14
1.4 数据结构与算法存在互为因果的辩证关系 15
习题 16
第2章 线性表 18
2.1 线性表的概念及其基本运算 19
2.1.1 线性表的逻辑描述 19
2.1.2 线性表的基本运算 19
2.2 顺序表——线性表的顺序存储方式 20
2.2.1 顺序存储结构 20
2.2.2 顺序表基本操作的算法实现 23
2.3.1 单向链表 33
2.3 链表——线性表的链接存储方式 33
2.2.3 顺序表性能小结 33
2.3.2 单向链表的基本操作 36
2.3.3 单向循环链表 51
2.3.4 双向链表和双向循环链表 52
2.3.5 链表性能小结 55
2.4 二维数组的数据压缩处理 55
2.4.1 有规律二维数组的一维化映射 55
2.4.2 无规律稀疏矩阵的数据压缩处理 57
习题 58
第3章 堆栈、队列和串 62
3.1 堆栈 63
3.1.1 堆栈的概念及其操作 63
3.1.2 堆栈的输出序列分析 64
3.1.3 基于顺序表的堆栈实现 64
3.1.4 基于链表的堆栈实现 65
3.1.5 堆栈应用 66
3.2 队列 68
3.2.1 队列的概念及其操作 68
3.2.2 循环队列 68
3.2.3 基于顺序表的队列实现 69
3.2.4 基于链表的队列实现 70
3.2.5 队列应用 71
3.3 串 72
3.3.1 串的概念及其操作 73
3.3.2 串存储结构描述 74
3.3.3 文本编辑 75
习题 76
第4章 树与二叉树 78
4.1.1 基本概念与属性 79
4.1 树与森林 79
4.1.2 树的存储结构 81
4.2 二叉树 82
4.2.1 基本概念 82
4.2.2 二叉树的存储结构 84
4.3 二叉树遍历 85
4.3.1 二叉树的深度优先遍历 86
4.3.2 二叉树的宽度优先遍历 89
4.3.3 二叉树遍历的工程化实现算法 91
4.4.1 树与二叉树的相互转换 92
4.4 树与森林的基本操作 92
4.4.2 森林与二叉树的相互转换 93
4.4.3 树的深度优先遍历 94
4.4.4 树的宽度优先遍历 94
4.5 二叉树应用之一——二叉排序树 95
4.5.1 二叉排序树的定义和遍历特征 95
4.5.2 二叉排序树基本操作的功能实现 95
4.6.1 Hufferman树的定义和特征 106
4.6 二叉树应用之二——Hufferman树 106
4.6.2 生成Hufferman树的算法思路 107
4.6.3 Hufferman树基本操作的功能实现 109
习题 116
第5章 图 118
5.1 基本概念 118
5.1.1 无向图 118
5.1.2 有向图 120
5.2.1 邻接矩阵表示法 121
5.2 图的存储结构 121
5.2.2 邻接表表示法 122
5.3 图的遍历 123
5.3.1 图的深度优先遍历 123
5.3.2 图的宽度优先遍历 124
5.4 生成树和最小生成树 125
5.4.1 生成树 126
5.4.2 最小生成树 126
5.4.3 基于知识的最小生成树 128
5.5 拓扑排序 132
5.6 关键路径法 135
5.7 最短路径 139
5.7.1 单点出发的最短路径问题 139
5.7.2 多点出发的最短路径问题 140
习题 145
第6章 基于树的工程性实用递归算法 147
6.1 算法的递归和非递归实现的性能分析 147
6.1.1 算法的递归实现方法性能分析 147
6.1.2 算法的非递归实现方法性能分析 150
6.1.3 算法的递归实现与非递归实现的比较 151
6.2 工程性实用递归算法解决方案 152
6.2.1 算法描述 152
6.2.2 基于树的工程性实用递归算法实现 152
6.3 新算法应用举例 155
6.3.1 fibonacci数列 155
6.3.2 汉诺塔 157
6.3.3 N皇后问题 160
习题 165
第7章 查找 167
7.1 基本概念和意义 167
7.2 线性表查找 168
7.2.1 线性表的顺序查找 168
7.2.2 顺序表的折半查找 170
7.2.3 顺序表的分块查找 172
7.2.4 线性表的Hash散列查找 173
7.3.1 二叉排序树 176
7.3 基于树的结点查找 176
7.3.2 平衡二叉树 177
7.3.3 一般二叉树的结点查找 182
习题 183
第8章 排序 185
8.1 基本概念 185
8.2 插入排序 186
8.2.1 直接插入排序 186
8.2.2 Shell排序 188
8.3.1 冒泡排序 190
8.3 交换排序 190
8.3.2 快速排序 191
8.4 选择排序 195
8.4.1 直接选择排序 195
8.4.2 二次选择排序 197
8.4.3 堆排序 199
8.5 其他归类排序方法 202
8.5.1 二路归并排序 202
8.5.3 基数排序 205
8.5.2 二叉排序树排序 205
8.6 排序小结 207
习题 208
附录A 实训项目 210
附录B 基于数组的函数原型定义和功能说明array.hc 217
附录C 基于链表的函数原型定义和功能说明chain.hc 222
附录D 基于链表的Hufferman树函数原型定义和功能说明Huffer.hc 230
附录E 教材电子课件所含文件清单及其运行环境说明 234
参考文献 237
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《联吡啶基钌光敏染料的结构与性能的理论研究》李明霞 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《激光加工实训技能指导理实一体化教程 下》王秀军,徐永红主编;刘波,刘克生副主编 2017
- 《异质性条件下技术创新最优市场结构研究 以中国高技术产业为例》千慧雄 2019
- 《AutoCAD 2019 循序渐进教程》雷焕平,吴昌松,陈兴奎主编 2019
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《Photoshop CC 2018基础教程》温培利,付华编著 2019
- 《数据库技术与应用 Access 2010 微课版 第2版》刘卫国主编 2020
- 《市政工程基础》杨岚编著 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