节译自The Algorithm Design Manual
Copyright Steven S. Skiena All Rights Reserved
Copyleft g9yuayon(渡渡鸟) All Rights Lost
这 两天VC++版的算法之争好不热闹。刚好俺考完一门试,心情宽松, 便来凑趣。算法的重要性各位大侠都说得很清楚了。看看周围优秀的程序员,哪个不是为了好的算法殚精竭虑,哪个优秀的软件不 是以高效的算法为基础。我也就转一些例子作为佐证。我计划先翻译 一部分The Algorithm Design Manual上的文章,然后再翻译部分 Programming Pearls上的文章。我才学了两年多电脑,也是菜鸟, 翻译不周的地方,还请高手指正。好了,话不须繁,言归正传,请看正文。
1. 作者的话(选自序言) 大多数我打过交道的专业程序员都不能胜任算法设计的任务,实在让人 遗憾,因为算法设计的技巧毕竟是计算机科学的核心技术之一。为一个现实的问题设计正确,高效,和可以实现的算法不是件容易事,因为一个成功的算法设计人员 需要掌握如下两种不同类别的知识:
技巧--一个好的算法设计人员理解一些基本的算法设计技巧,包括数据结构,动态规划,深度优先搜索,回溯,以及启发式设计。不过也许最重要的技术还是建模--把纷繁复杂的现实应用抽象为适合用算法解决的 简洁问题的艺术。
资源--好的算法设计者站在巨人的肩上。他们不会花费精力为每一个问题从 头设计算法,而是设法找出哪些已知的东西可用以解决待解的问题;他们也 不会从头实现常见的算法,而是找出现成的代码作为出发点。
在 实际工作中,算法问题不会在一个大型项目开始时出现。想反,它们多在 程序员突然不知道如何继续往下完成编程或当前的程序不敷使用时出现在某些 子问题里。为了让大家更好地理解实际应用中算法问题的来龙去脉,我们在此 提供一组“实战故事”。它们都来自于我们解决实际问题的经验。这些故事的寓意 是,算法的设计和分析不仅是理论,也是帮助人们解决问题的重要工具。
该去看书复习喽,收工
分享到:
相关推荐
遗传算法和粒子群算法程序设计及实例应用
29. 排序综合(限1 人完成) 利用随机函数产生N个随机整数(20000以上),对这些数进行多种方法进行排序。 要求: ...PS:采用了直接选择排序算法、冒泡排序、希尔排序、直接插入排序这四种排序算法。
《数学建模算法与应用》所选案例具有代表性,注重从不同侧面反映数学思想在实际问题中的灵活应用,既注重算法原理的通俗性,也注重算法应用的实现性,克服了很多读者看懂算法却解决不了实际问题的困难。《数学建模...
MATLAB优化算法实战应用案例-PLS应用分析
精品课件 基于流程图的算法原型设计工具 RAPTOR程序设计案例教程 04 子图与子程序的应用(共48页).ppt 精品课件 基于流程图的算法原型设计工具 RAPTOR程序设计案例教程 05 图形程序设计(共47页).ppt 精品课件 ...
《数学建模算法与应用》所选案例具有代表性,注重从不同侧面反映数学思想在实际问题中的灵活应用,既注重算法原理的通俗性,也注重算法应用的实现性,克服了很多读者看懂算法却解决不了实际问题的困难。《数学建模...
有关算法的基本概念原理,详细叙述,即算法实例
第2篇为MATLAB高级算法应用设计,包括人脸检测识别、改进的多算子融合图像识别系统设计、罚函数的粒子群算法的函数寻优、车载自组织网络中路边性能及防碰撞算法研究、免疫算法的数值逼近优化分析、启发式算法的函数...
本书在简要回顾了基本的C++ 程序设计概念的基础上,全面系统地介绍了队列、堆栈、树、图等基本数据结构,以及贪婪算法、分而治之算法、分枝定界算法等多种算法设计方法,为数据结构与算法的继续学习和研究奠定了一...
本书在简要回顾了基本的C++ 程序设计概念的基础上,全面系统地介绍了队列、堆栈、树、图等基本数据结构,以及贪婪算法、分而治之算法、分枝定界算法等多种算法设计方法,为数据结构与算法的继续学习和研究奠定了一...
本书系统地阐述了算法设计的方法、技术和应用实例。全书内容包括基础算法、基本数据结构、基本算法设计技术、图算法、网络流和匹配、文本处理算法、数论算法、网络算法、NP完全性、近似算法、回溯法和分枝限界法、外...
《算法设计与分析》目录: 第一篇引入篇 第1章算法概述1.1用计算机求解问题与算法 1.1.1用计算机求解问题的步骤 1.1.2算法及其要素和特性 1.1.3算法设计及基本方法 1.1.4从算法到实现 1.2算法描述 1.2.1算法描述简介...
精品课件 基于流程图的算法原型设计工具 RAPTOR程序设计案例教程 04 子图与子程序的应用(共48页).ppt 精品课件 基于流程图的算法原型设计工具 RAPTOR程序设计案例教程 05 图形程序设计(共47页).ppt 精品课件 ...
第三部分 算法设计方法 第17章 贪婪算法 17.1 最优化问题 17.2 贪婪算法思想 17.3 应用 17.3.1 货箱装载 17.3.2 0/1背包问题 17.3.3 拓扑排序 17.3.4 二分覆盖 17.3.5 单源最短路径 17.3.6 最小成本生成树 17.4 参考...
一个 遗传算法实例 和一个粒子群算法实例 。 针对 遗传算法下面作几点说明 1. 适应度与编码 针对 具体问题 ,遗传算法首要面对的是 编码 方式 的选择和 适应度函数的选择 。 两者的影 响 主要有两方面 一是对结果...
本书在简要回顾了基本的C++ 程序设计概念的基础上,全面系统地介绍了队列、堆栈、树、图等基本数据结构,以及贪婪算法、分而治之算法、分枝定界算法等多种算法设计方法,为数据结构与算法的继续学习和研究奠定了一...
1. 遗传算法概述:受自然界和生物界规律的启迪,人们根据其原理模仿设计了许多求解问题的算法,包括人工神经网络、模糊逻辑、遗传算法、DNA计算、模拟退火算法、禁忌搜索算法、免疫算法、膜计算、量子计算、粒子群...
《算法分析与设计:图灵计算机科学丛书》系统地阐述了算法设计的方法、技术和应用实例。全书内容包括基础算法、基本数据结构、基本算法设计技术、图算法、网络流和匹配、文本处理算法、数论算法、网络算法、NP完全性...