CSDN博客

img g9yuayon

算法设计应用实例

发表于2001/5/12 9:48:00  6267人阅读

分类: 开发 计算机科学

节译自The Algorithm Design Manual
Copyright Steven S. Skiena All Rights Reserved
Copyleft g9yuayon(渡渡鸟) All Rights Lost

这 两天VC++版的算法之争好不热闹。刚好俺考完一门试,心情宽松, 便来凑趣。算法的重要性各位大侠都说得很清楚了。看看周围优秀的程序员,哪个不是为了好的算法殚精竭虑,哪个优秀的软件不 是以高效的算法为基础。我也就转一些例子作为佐证。我计划先翻译 一部分The Algorithm Design Manual上的文章,然后再翻译部分 Programming Pearls上的文章。我才学了两年多电脑,也是菜鸟, 翻译不周的地方,还请高手指正。好了,话不须繁,言归正传,请看正文。

1. 作者的话(选自序言) 大多数我打过交道的专业程序员都不能胜任算法设计的任务,实在让人 遗憾,因为算法设计的技巧毕竟是计算机科学的核心技术之一。为一个现实的问题设计正确,高效,和可以实现的算法不是件容易事,因为一个成功的算法设计人员 需要掌握如下两种不同类别的知识:

技巧--一个好的算法设计人员理解一些基本的算法设计技巧,包括数据结构,动态规划,深度优先搜索,回溯,以及启发式设计。不过也许最重要的技术还是建模--把纷繁复杂的现实应用抽象为适合用算法解决的 简洁问题的艺术。

资源--好的算法设计者站在巨人的肩上。他们不会花费精力为每一个问题从 头设计算法,而是设法找出哪些已知的东西可用以解决待解的问题;他们也 不会从头实现常见的算法,而是找出现成的代码作为出发点。

在 实际工作中,算法问题不会在一个大型项目开始时出现。想反,它们多在 程序员突然不知道如何继续往下完成编程或当前的程序不敷使用时出现在某些 子问题里。为了让大家更好地理解实际应用中算法问题的来龙去脉,我们在此 提供一组“实战故事”。它们都来自于我们解决实际问题的经验。这些故事的寓意 是,算法的设计和分析不仅是理论,也是帮助人们解决问题的重要工具。

该去看书复习喽,收工


0 0

相关博文

我的热门文章

img
取 消
img