《算法技术手册》简介:
《算法技术手册》内容简介:开发健壮的软件需要高效的算法,然后程序员们往往直至问题发生之时,才会去求助于算法。《算法技术手册》讲解了许多现有的算法,可用于解决各种问题。通过阅读它,可以使您学会如何选择和实现正确的算法,来达成自己的目标。另外,书中的数学深浅适中,足够使您可以了解并分析算法的性能。
较之理论而言,《算法技术手册》更专注于应用。《算法技术手册》提供了高效的代码解决方案,使用多种语言进行编写,让您可以轻松地将其应用于特定的工程当中。通过《算法技术手册》,您可以:
· 解决特定代码的问题,或者提升既有解决方案的性能
· 快速找到与您所解决的问题相关的算法,并决定哪个算法才是最适合的那一个
· 探索使用C、C++、Java以及Ruby实现的算法解决方案以及开发小贴士
· 了解算法预期的性能,以及它达到最高性能时所需要的条件
· 发现不同算法之间相似的设计哲学
· 学习高级数据结构,来提升算法的性能
通过《算法技术手册》,您能学到如何提升算法的性能,这将是您的软件应用程序走向成功的关键。
《算法技术手册》目录:
前言
第一部分
第1章 算法真的很重要
理解问题
如果需要,尽可能用实践检验
解决问题的算法
花絮
故事的寓意
参考文献
第2章 算法的数学原理
问题样本的规模
函数的增长率
最好最坏和平均情况下的性能分析
性能指标
混合操作
基准测试
最后一点
参考文献
第3章 模式和领域
模式:一种交流语言
算法模式的格式
伪代码模式的格式
设计格式
基于经验的评价格式
领域和算法
浮点计算
手动内存分配
选择一门编程语言
参考文献
第二部分
第4章 排序算法
概述
插入排序
中值排序
快速排序
选择排序
堆排序
计数排序
选择排序算法的标准
参考文献
第5章 查找
概述
顺序查找
二分查找
基于散列的查找
二叉查找树
参考文献
第6章 图算法
概述
深度优先搜索
广度优先搜索
单源最短路径
所有点对最短路径
最小生成树算法
参考文献
第7章 人工智能中的寻路
概述
深度优先搜索
广度优先搜索
A*搜索
比较
Minimax
NegMax
AlphaBeta
参考文献
第8章 网络流算法
概述
最大流
二部图匹配
在增广路上的深入思考
最小开销流
转运问题
运输问题
任务分配问题
线性编程
参考文献
第9章 计算几何
概述
凸包扫描
线段扫描
最近点查询
范围查询
参考文献
第三部分
第10章 最后的招数
另类算法
近似算法
离线算法
并行算法
随机算法
结果可能出错却可以衰减错误率的算法
参考文献
第11章 尾声
概述
原则:了解数据
原则:将问题分解至更小的问题
原则:选择正确的数据结构
原则:空间换时间
原则:如果没有显而易见的解法,使用搜索
原则:如果没有显而易见的解法,将问题归约为另一个有解的问题
原则:编写算法难,测试算法更难
第四部分
附录 基准测试
· · · · · ·