中文名: 算法导论(原书第二版)

内容简介
《算法导论(原书第2版)》深入浅出,全面地介绍了计算机算法。对每一个算法的分析既易于理解又十分有趣,并保持了数学严谨性。《算法导论(原书第2版)》的设计目标全面,适用于多种用途。涵盖的内容有:算法在计算中的作用,概率分析和随机算法的介绍。本书专门讨论了线性规划,介绍了动态规划的两个应用,随机化和线性规划技术的近似算法等,还有有关递归求解、快速排序中用到的划分方法与期望线性时间顺序统计算法,以及对贪心算法元素的讨论。《算法导论(原书第2版)》还介绍了对强连通子图算法正确性的证明,对哈密顿回路和子集求和问题的np完全性的证明等内容。《算法导论(原书第2版)》提供了900多个练习题和思考题以及叙述较为详细的实例研究。.
《算法导论(原书第2版)》内容丰富,对本科生的数据结构课程和研究生的算法课程都是很实用的教材。《算法导论(原书第2版)》在读者的职业生涯中,也是一本案头的数学参考书或工程实践手册。
在有关算法的书中,有一些叙述非常严谨,但不够全面,另一些涉及了大量的题材,但又缺乏严谨性。《算法导论》将严谨性和全面性融为一体。..
《算法导论(原书第2版)》深入讨论各类算法,并着力使这些算法的设计和分析能为各个层次的读者接受。各章自成体系,可以作为独立的学习单元。算法以英语和伪代码的形式描述,具备初步程序设计经验的人就能看懂。说明和解释力求浅显易懂,不失深度和数学严谨性。
《算法导论(原书第2版)》自第1版出版以来,已经成为世界范围内广泛使用的大学教材和专业人员的标准参考书。第2版增加了论述算法作用、概率分析与随机算法、线性规划等几章。同时,对第1版的几乎每一节都作了大量的修订。一项巧妙而又重要的修改是提前引入循环不变式,并在全书中用来证明算法的正确性。在不改变数学和分析重点的前提下,作者将许多数学基础知识从第一部分移到了附录中,并在开始部分加入了一些富有诱导性的题材。

目录:
第一部分 基础知识
引言
第1章 算法在计算中的作用
1.1 算法
1.2 作为一种技术的算法
第2章 算法入门
2.1 插入排序
2.2 算法分析
2.3 算法设计
2.3.1 分治法
2.3.2 分治法分析
第3章 函数的增长
3.1 渐近记号
3.2 标准记号和常用函数
第4章 递归式
4.1 代换法
.4.2 递归树方法
4.3 主方法
*4.4 主定理的证明
4.4.1 取正合幂时的证明
4.4.2 上取整函数和下取整函数
第5章 概率分析和随机算法
5.1 雇用问题
5.2 指示器随机变量
5.3 随机算法
*5.4 概率分析和指示器随机变量的进一步使用
5.4.1 生日悖论
5.4.2 球与盒子
5.4.3 序列
5.4.4 在线雇用问题
第二部分 排序和顺序统计学
引言
第6章 堆排序
6.1 堆
6.2 保持堆的性质
6.3 建堆
6.4 堆排序算法
6.5 优先级队列
第7章 快速排序
7.1 快速排序的描述
7.2 快速排序的性能
7.3 快速排序的随机化版本
7.4 快速排序分析
7.4.1 最坏情况分析
7.4.2 期望的运行时间
第8章 线性时间排序
8.1 排序算法时间的下界
8.2 计数排序
8.3 基数排序
8.4 桶排序
第9章 中位数和顺序统计学
9.1 最小值和最大值
9.2 以期望线性时间做选择
9.3 最坏情况线性时间的选择
第三部分 数据结构
引言
第10章 基本数据结构
10.1 栈和队列
10.2 链表
10.3 指针和对象的实现
10.4 有根树的表示
第11章 散列表
11.1 直接寻址表
11.2 散列表
11.3 散列函数
11.3.1 除法散列法
11.3.2 乘法散列法
*11.3.3 全域散列
11.4 开放寻址法
*11.5 完全散列
第12章 二叉查找树
12.1 二叉查找树
12.2 查询二叉查找树
12.3 插入和删除
*12.4 随机构造的二叉查找树
第13章 红黑树
13.1 红黑树的性质
13.2 旋转
13.3 插入
13.4 删除
第14章 数据结构的扩张
14.1 动态顺序统计
14.2 如何扩张数据结构
14.3 区间树
第四部分 高级设计和分析技术
导论
第15章 动态规划
15.1 装配线调度
15.2 矩阵链乘法
15.3 动态规划基础
15.4 最长公共子序列
15.5 最优二叉查找树
第16章 贪心算法
16.1 活动选择问题
16.2 贪心策略的基本内容
16.3 赫夫曼编码
*16.4 贪心法的理论基础
*16.5 一个任务调度问题
第17章 平摊分析
17.1 聚集分析
17.2 记账方法
17.3 势能方法
17.4 动态表..
17.4.1 表扩张
17.4.2 表扩张和收缩
第五部分 高级数据结构
概述
第18章 b树
18.1 b树的定义
18.2 对b树的基本操作
18.3 从b树中删除关键字
第19章 二项堆
19.1 二项树与二项堆
19.1.1 二项树
19.1.2 二项堆
19.2 对二项堆的操作
第20章 斐波那契堆
20.1 斐波那契堆的结构
20.2 可合并堆的操作
20.3 减小一个关键字与删除一个结点
20.4 最大度数的界
第21章 用于不相交集合的数据结构
21.1 不相交集合上的操作
21.2 不相交集合的链表表示
21.3 不相交集合森林
*21.4 带路径压缩的按秩合并的分析
第六部分 图 算 法
引言
第22章 图的基本算法
22.1 图的表示
22.2 广度优先搜索
22.3 深度优先搜索
22.4 拓扑排序
22.5 强连通分支
第23章 最小生成树
23.1 最小生成树的形成
23.2 kruskal算法和prim算法
第24章 单源最短路径
24.1 bellman-ford算法
24.2 有向无回路图中的单源最短路径
24.3 dijkstra算法
24.4 差分约束与最短路径
24.5 最短路径性质的证明
第25章 每对顶点间的最短路径
25.1 最短路径与矩阵乘法
25.2 floyd-warshall算法
25.3 稀疏图上的johnson算法
第26章 最大流
26.1 流网络
26.2 ford-fulkerson方法
26.3 最大二分匹配
*26.4 压入与重标记算法
*26.5 重标记与前移算法
第七部分 算法研究问题选编
引言
第27章 排序网络
27.1 比较网络
27.2 0-1原理
27.3 双调排序网络
27.4 合并网络
27.5 排序网络
第28章 矩阵运算
28.1 矩阵的性质
28.2 矩阵乘法的strassen算法
28.3 求解线性方程组
28.4 矩阵求逆
28.5 对称正定矩阵与最小二乘逼近
第29章 线性规划
29.1 标准型和松弛型
29.2 将问题表达为线性规划
29.3 单纯形算法
29.4 对偶性
29.5 初始基本可行解
第30章 多项式与快速傅里叶变换
30.1 多项式的表示
30.2 dft与fft
30.3 有效的fft实现
第31章 有关数论的算法
31.1 初等数论概念
31.2 最大公约数
31.3 模运算
31.4 求解模线性方程
31.5 中国余数定理
31.6 元素的幂
31.7 rsa公钥加密系统
*31.8 素数的测试
*31.9 整数的因子分解
第32章 字符串匹配
32.1 朴素的字符串匹配算法
32.2 rabin-karp算法
32.3 利用有限自动机进行字符串匹配
*32.4 knuth-morris-pratt算法
第33章 计算几何学
33.1 线段的性质
33.2 确定任意一对线段是否相交
33.3 寻找凸包
33.4 寻找最近点对
第34章 np完全性
34.1 多项式时间
34.2 多项式时间的验证
34.3 np完全性与可归约性
34.4 np完全性的证明
34.5 np完全问题
34.5.1 团问题
34.5.2 顶点覆盖问题
34.5.3 哈密顿回路问题
34.5.4 旅行商问题
34.5.5 子集和问题
第35章 近似算法
35.1 顶点覆盖问题
35.2 旅行商问题
35.2.1 满足三角不等式的旅行商问题
35.2.2 一般旅行商问题
35.3 集合覆盖问题
35.4 随机化和线性规划
35.5 子集和问题
第八部分 附录:数学基础知识
引言
a 求和
a.1 求和公式及其性质
a.2 确定求和时间的界
b 集合等离散数学结构
b.1 集合
b.2 关系
b.3 函数
b.4 图
b.5 树
b.5.1 自由树
b.5.2 有根树和有序树
b.5.3 二叉树与位置树
c 计数和概率
c.1 计数
c.2 概率
c.3 离散随机变量
c.4 几何分布与二项分布
c.5 二项分布的尾
参考文献
索引 

Last edited May 21, 2014 at 6:41 AM by Dapeng, version 5