●章算法引论
1.1算法与程序
1.2表达算法的抽象机制
1.3描述算法
1.4算法复杂性分析
小结
习题
第2章递归与分治策略
2.1递归的概念
2.2分治法的基本思想
2.3二分搜索技术
2.4大整数的乘法
2.5Strassen矩阵乘法
2.6棋盘覆盖
2.7合并排序
2.8快速排序
2.9线性时间选择
2.10最接近点对问题
2.11循环赛日程表
小结
习题
第3章动态规划
3.1矩阵连乘问题
3.2动态规划算法的基本要素
3.3最长公共子序列
3.4凸多边形最优三角剖分
3.5多边形游戏
3.6图像压缩
3.7电路布线
3.8流水作业调度
3.90-1背包问题
3.10最优二叉搜索树
小结
习题
第4章贪心算法
4.1活动安排问题
4.2贪心算法的基本要素
4.2.1贪心选择性质
4.2.2最优子结构性质
4.2.3贪心算法与动态规划算法的差异
4.3最优装载
4.4哈夫曼编码
4.4.1前缀码
4.4.2构造哈夫曼编码
4.4.3哈夫曼算法的正确性
4.5单源最短路径
4.5.1算法基本思想
4.5.2算法的正确性和计算复杂性
4.6最小生成树
4.6.1最小生成树性质
4.6.2Prim算法
4.6.3Kruskal算法
4.7多机调度问题
4.8贪心算法的理论基础
4.8.1拟阵
4.8.2带权拟阵的贪心算法
4.8.3任务时间表问题
小结
习题
第5章回溯法
5.1回溯法的算法框架
5.1.1问题的解空间
5.1.2回溯法的基本思想
5.1.3递归回溯
5.1.4迭代回溯
5.1.5子集树与排列树
5.2装载问题
5.3批处理作业调度
5.4符号三角形问题
5.5n后问题
5.60-1背包问题
5.7优选团问题
5.8图的m着色问题
5.9旅行售货员问题
5.10圆排列问题
5.11电路板排列问题
5.12连续邮资问题
5.13回溯法的效率分析
小结
习题
第6章分支限界法
6.1分支限界法的基本思想
6.2单源最短路径问题
6.3装载问题
6.4布线问题
6.50-1背包问题
6.6优选团问题
6.7旅行售货员问题
6.8电路板排列问题
6.9批处理作业调度
小结
习题
第7章概率算法
7.1随机数
7.2数值概率算法
7.2.1用随机投点法计算π值
7.2.2计算定积分
7.2.3解非线性方程组
7.3舍伍德算法
7.3.1线性时间选择算法
7.3.2跳跃表
7.4拉斯维加斯算法
7.4.1n后问题
7.4.2整数因子分解
7.5蒙特卡罗算法
7.5.1蒙特卡罗算法的基本思想
7.5.2主元素问题
7.5.3素数测试
小结
习题
第8章NP完全性理论与近似算法
8.1P类与NP类问题
8.1.1非确定性图灵机
8.1.2P类与NP类语言
8.1.3多项式时间验证
8.2NP完全问题
8.2.1多项式时间变换
8.2.2Cook定理
8.3一些典型的NP完全问题
8.3.1合取范式的可满足性问题
8.3.23元合取范式的可满足性问题
8.3.3团问题
8.3.4顶点覆盖问题
8.3.5子集和问题
8.3.6哈密顿回路问题
8.3.7旅行售货员问题
8.4近似算法的性能
8.5顶点覆盖问题的近似算法
8.6旅行售货员问题近似算法
8.6.1具有三角不等式性质的旅行售货员问题
8.6.2一般的旅行售货员问题
8.7集合覆盖问题的近似算法
8.8子集和问题的近似算法
8.8.1子集和问题的指数时间算法
8.8.2子集和问题的完全多项式时间近似格式
小结
习题
第9章串与序列的算法
9.1子串搜索算法
9.1.1串的基本概念
9.1.2KMP算法
9.1.3Rabin-Karp算法
9.1.4多子串搜索与AC自动机
9.2后缀数组与最长公共子串
9.2.1后缀数组的基本概念
9.2.2构造后缀数组的倍前缀算法
9.2.3构造后缀数组的DC3分治法
9.2.4最长公共前缀数组与最长公共扩展算法
9.2.5最长公共子串算法
9.3序列比较算法
9.3.1编辑距离算法
9.3.2最长公共单调子序列
9.3.3有约束最长公共子序列
小结
习题
0章算法优化策略
10.1算法设计策略的比较与选择
10.1.1优选子段和问题的简单算法
10.1.2优选子段和问题的分治算法
10.1.3优选子段和问题的动态规划算法
10.1.4优选子段和问题与动态规划算法的推广
10.2动态规划加速原理
10.2.1货物储运问题
10.2.2算法及其优化
10.3问题的算法特征
10.3.1贪心策略
10.3.2对贪心策略的改进
10.3.3算法三部曲
10.3.4算法实现
10.3.5算法复杂性
10.4优化数据结构
10.4.1带权区间最短路问题
10.4.2算法设计思想
10.4.3算法实现方案
10.4.4并查集
10.4.5可并优先队列
10.5优化搜索策略
小结
习题
1章在线算法设计
11.1在线算法设计的基本概念
11.2页调度问题
11.3势函数分析
11.4k服务问题
11.4.1竞争比的下界
11.4.2平衡算法
11.4.3对称移动算法
11.5Steiner树问题
11.6在线任务调度
11.7负载平衡
小结
习题
词汇索引
参考文献
内容简介
为了适应培养我国21世纪计算机各类人才的需要,结合我国高等学校教育工作的现状,立足培养学生能跟上靠前计算机科学技术的发展水平,更新教学内容和教学方法,提高教学质量,本书以算法设计策略为知识单元,系统地介绍计算机算法的设计方法与分析技巧,以期为计算机科学与技术学科的学生提供广泛而坚实的计算机算法基础知识。另有配套的《算法设计与分析(第4版)习题解答》,对本书的全部习题做了详尽的解答。本书内容丰富,观点新颖,理论联系实际。不仅可用作高等学校计算机专业本科生和研究生学习计算机算法设计的教材,而且也适合广大工程技术人员和自学读者学习参考。
评论晒单