-
内容大纲
本书细腻讲解计算机算法的C语言实现。全书分为四部分,共16章。包括基本算法分析原理,基本数据结构、抽象数据结构、递归和树等数据结构知识,选择排序、插入排序、冒泡排序、希尔排序、快速排序方法、归并和归并排序方法、优先队列与堆排序方法、基数排序方法以及特殊用途的排序方法,并比较了各种排序方法的性能特征,在进一步讲解符号表、树等抽象数据类型的基础上,重点讨论散列方法、基数搜索以及外部搜索方法。书中提供了用C语言描述的完整算法源程序,并且配有丰富的插图和练习,还包含大量简洁的实现将理论和实践成功地相结合,这些实现均可用在真实应用上。
本书内容丰富,具有很强的实用价值,适合作为高等院校计算机及相关专业本科生算法课程的教材,也是广大研究人员的极佳参考读物。 -
作者介绍
Robed Sedgewick拥有斯坦福大学博士学位(导师为Donald E. Knuth),昔林斯顿大学计算机科学系教授,Adobe Systems公司董事,曾是XeroxPARC的研究人员,还曾就职于美国国防部防御分析研究所以及INRIA。除本书外,他还与Philippe Flajolet合著了《算法分析导论》一书。 -
目录
出版者的话
译者序
前言
第一部分 基础知识
第1章 引言1
1.1 算法1
1.2 典型问题—连通性2
1.3 合并-查找算法5
1.4 展望12
1.5 主题概述13
第2章 算法分析的原理15
2.1 实现和经验分析15
2.2 算法分析17
2.3 函数的增长19
2.4 大O符号23
2.5 基本递归方程27
2.6 算法分析示例29
2.7 保证、预测及局限性33
第二部分 数据结构
第3章 基本数据结构37
3.1 构建组件37
3.2 数组44
3.3 链表49
3.4 链表的基本处理操作54
3.5 链表的内存分配60
3.6 字符串63
3.7 复合数据结构66
第4章 抽象数据类型74
4.1 抽象对象和对象集76
4.2 下推栈ADT78
4.3 栈ADT客户示例79
4.4 栈ADT的实现84
4.5 创建一个新ADT87
4.6 FIFO队列和广义队列90
4.7 复制和索引项95
4.8 一级ADT99
4.9 基于应用的ADT示例106
4.10 展望110
第5章 递归与树111
5.1 递归算法111
5.2 分治法116
5.3 动态规划127
5.4 树133
5.5 树的数学性质138
5.6 树的遍历140
5.7 递归二叉树算法145
5.8 图的遍历149
5.9 综述155
第三部分 排序
第6章 基本排序方法157
6.1 游戏规则158
6.2 选择排序161
6.3 插入排序162
6.4 冒泡排序164
6.5 基本排序方法的性能特征166
6.6 希尔排序171
6.7 对其他类型的数据进行排序177
6.8 索引和指针排序180
6.9 链表排序185
6.1 0关键字索引统计188
第7章 快速排序191
7.1 基本算法191
7.2 快速排序算法的性能特征195
7.3 栈大小198
7.4 小的子文件201
7.5 三者取中划分203
7.6 重复关键字206
7.7 字符串和向量209
7.8 选择210
第8章 归并与归并排序213
8.1 两路归并213
8.2 抽象原位归并215
8.3 自顶向下的归并排序216
8.4 基本算法的改进219
8.5 自底向上的归并排序220
8.6 归并排序的性能特征223
8.7 归并排序的链表实现225
8.8 改进的递归过程227
第9章 优先队列和堆排序229
9.1 基本操作的实现231
9.2 堆数据结构233
9.3 基于堆的算法235
9.4 堆排序240
9.5 优先队列ADT244
9.6 索引数据项的优先队列247
9.7 二项队列250
第10章 基数排序258
10.1 位.字节和字259
10.2 二进制快速排序261
10.3 MSD基数排序265
10.4 三路基数快速排序271
10.5 LSD基数排序274
10.6 基数排序的性能特征278
10.7 亚线性时间排序280
第11章 特殊用途的排序方法284
11.1 Batcher奇偶归并排序284
11.2 排序网289
11.3 外部排序295
11.4 排序-归并的实现299
11.5 并行排序/归并303
第四部分 搜索
第12章 符号表和二叉搜索树307
12.1 符号表抽象数据类型308
12.2 关键字索引搜索311
12.3 顺序搜索313
12.4 二分搜索318
12.5 二叉搜索树321
12.6 BST的性能特征327
12.7 符号表的索引实现329
12.8 在BST的根节点插入332
12.9 其他ADT函数的BST实现336
第13章 平衡树343
13.1 随机化BST345
13.2 伸展BST350
13.3 自顶向下2-3-4树355
13.4 红黑树360
13.5 跳跃表368
13.6 性能特征374
第14章 散列377
14.1 散列函数377
14.2 链地址法385
14.3 线性探测法388
14.4 双重散列表392
14.5 动态散列表396
14.6 综述399
第15章 基数搜索402
15.1 数字搜索树402
15.2 线索406
15.3 帕氏线索413
15.4 多路线索和TST419
15.5 文本字符串索引算法430
第16章 外部搜索434
16.1 游戏规则435
16.2 索引顺序访问436
16.3 B树438
16.4 可扩展散列447
16.5 综述455
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...