|
作者:[美]马克·艾伦·维斯(Mark,Allen,Weiss) |
译者:冯舜玺 |
出版时间:2019年04月01日 |
出版社:机械工业出版社 |
书号ISBN:9787111621959 |
总页数:412 |
这是一本非常经典的数据结构和算法书籍,内容系统、全面,原书曾被评为 20 世纪顶尖的 30 部计算机著作之一,有超过 500 所大学选择它作为正式的教材。
这里提供的是《数据结构与算法分析C语言描述(原书第2版)》的高清 PDF 下载,内容完整,附带目录标签。
和同类的其它书籍相比,这本书有以下几点特别之处:
-
专门用一章的内容讨论算法设计的技巧,包括贪心算法、分治算法、动态规定算法、随机化算法和回溯算法;
-
书中讲解了当前流行的几种新的数据结构,比如斐波那契堆、斜堆、二项队列、跳跃表和伸展树等;
-
书中还讲解了几种高级的数据结构,包括红黑树、自顶向下伸展树,treap 树、k 维树、配对堆等。
这本书的读者需要具备扎实的 C 语言基础,尤其是 C 语言的指针和结构体,还需要有一些离散数学的基础。作为一名老程序员,我不太推荐初学者使用这本书,因为它有点刻板和严谨,不够通俗易懂。
另外,很多读者吐槽这本书的翻译水平,比如一位读者给出的评价:
这个翻译估计是靠谷歌的,看的眼花缭乱,语句又长又臭,看的吃力。
对于英语基础不错的读者,建议尝试阅读原版的英文书籍,顺带可以提高阅读英文文献的能力。
书籍目录
-
第1章 引论 1
-
1.1 本书讨论的内容 2
-
1.2 数学知识复习 3
-
1.3 递归简论 7
-
总结 10
-
练习 10
-
参考文献 11
-
第2章 算法分析 13
-
2.1 数学基础 14
-
2.2 模型 16
-
2.3 要分析的问题 16
-
2.4 运行时间计算 18
-
总结 28
-
练习 29
-
参考文献 32
-
第3章 表、栈和队列 35
-
3.1 抽象数据类型 36
-
3.2 表ADT 36
-
3.3 栈ADT 50
-
3.4 队列ADT 62
-
总结 66
-
练习 66
-
第4章 树 71
-
4.1 预备知识 72
-
4.2 二叉树 76
-
4.3 查找树ADT——二叉查找树 80
-
4.4 AVL树 86
-
4.5 伸展树 95
-
4.6 树的遍历 102
-
4.7 B树 103
-
总结 107
-
练习 108
-
参考文献 113
-
第5章 散列 117
-
5.1 一般想法 118
-
5.2 散列函数 118
-
5.3 分离链接法 120
-
5.4 开放定址法 123
-
5.5 再散列 130
-
5.6 可扩散列 132
-
总结 133
-
练习 134
-
参考文献 137
-
第6章 优先队列(堆) 139
-
6.1 模型 140
-
6.2 一些简单的实现 141
-
6.3 二叉堆 141
-
6.4 优先队列的应用 149
-
6.5 d-堆 151
-
6.6 左式堆 152
-
6.7 斜堆 158
-
6.8 二项队列 159
-
总结 165
-
练习 166
-
参考文献 169
-
第7章 排序 173
-
7.1 预备知识 174
-
7.2 插入排序 174
-
7.3 一些简单排序算法的下界 175
-
7.4 希尔排序 176
-
7.5 堆排序 179
-
7.6 归并排序 182
-
7.7 快速排序 186
-
7.8 大型结构的排序 195
-
7.9 排序的一般下界 196
-
7.10 桶式排序 198
-
7.11 外部排序 198
-
总结 203
-
练习 204
-
参考文献 207
-
第8章 不相交集ADT 209
-
8.1 等价关系 210
-
8.2 动态等价性问题 210
-
8.3 基本数据结构 212
-
8.4 灵巧求并算法 214
-
8.5 路径压缩 216
-
8.6 按秩求并和路径压缩的坏情形 217
-
8.7 一个应用 221
-
总结 222
-
练习 222
-
参考文献 223
-
第9章 图论算法 225
-
9.1 若干定义 226
-
9.2 拓扑排序 228
-
9.3 短路径算法 230
-
9.4 网络流问题 243
-
9.5 小生成树 247
-
9.6 深度优先搜索的应用 251
-
9.7 NP-完全性介绍 262
-
总结 266
-
练习 266
-
参考文献 270
-
第10章 算法设计技巧 273
-
10.1 贪婪算法 274
-
10.2 分治算法 286
-
10.3 动态规划 297
-
10.4 随机化算法 306
-
10.5 回溯算法 314
-
总结 323
-
练习 323
-
参考文献 329
-
第11章 摊还分析 333
-
11.1 一个无关的智力问题 334
-
11.2 二项队列 335
-
11.3 斜堆 339
-
11.4 斐波那契堆 341
-
11.5 伸展树 348
-
总结 351
-
练习 351
-
参考文献 353
-
第12章 高级数据结构及其实现 355
-
12.1 自顶向下伸展树 356
-
12.2 红黑树 361
-
12.3 确定性跳跃表 368
-
12.4 AA树 373
-
12.5 treap树 378
-
12.6 k-d树 379
-
12.7 配对堆 383
-
总结 387
-
练习 387
-
参考文献 389
书籍下载
免费下载完整版 PDF,文件名称:《数据结构与算法分析(C语言描述)》原书第2版.pdf
本文链接:http://task.lmcjl.com/news/16877.html