DPV:算法的历史与未来_Algorithms书评-查字典图书网
查字典图书网
当前位置: 查字典 > 图书网 > 算法 > Algorithms > DPV:算法的历史与未来
陰陽糊 Algorithms 的书评 发表时间:2012-10-24 15:10:42

DPV:算法的历史与未来

我们为什么要学习算法?

正如大名鼎鼎的Polya所说,为的是在遇到问题时,我们知道"How to solve it!"

对于每一个算法都有这样的一个过程:设计 --> 证明 --> 应用;而我们学习算法其实也是对这三个方面有着不同的侧重。如果你更关系证明与应用,很遗憾这本书应该不太符合你的口味~

这本书完全没有定义-定理-证明的套路,取而代之的是思想上的演绎!换而言之,这本书所讲的内容都是每一个算法设计者在设计初期时脑子里所思考的内容,每个算法背后的历史。不得不说,三位作者算法功力之深,理解之深刻,实在令人赞叹。正因为如此,这本书才会如此之薄。阅读之时常有顿悟之感!好不畅快~

作者们似乎很注重Problem Solving的过程,本书的所有章节基本上的都是以一种Problem --> Solution --> Algorithm Design/Mathematics Model的模式展开的,这才是一个计算机研究者的思想方式。正因为如此,所需要展示的Problem不需要太多,所涉及的算法也不需要像CLRS那样一一列举比较,也没有像KT那样“定理,证明"的严谨,一切所需要的只是idea!

薄薄的一本书虽然没有多少章节,然作者们却为我们搭建好了整个算法世界的框架:
(1) Classical algorithm and technique:
Arithmetic algorithm
Divide-and-conquer method
Graph algorithm
Greedy method

(2) Programming
Dynamic Programming
Linear Programming

(3) Complexity theory
P, NP, NPC

(4) Coping with NPC
Randomized algorithm
Approximation algorithm
Searching

(5) Future
Quantum algorithm


以及所有所涉及的数学领域:
Number theory
Graph theory
Game theory
Cryptography
Linear Programming
Algorithm analysis & Complexity theory

本书的习题也是精心安排设计的(从NPC那章的习题都是选自Karp's 21 NP-complete problems就可见一斑),极其精彩。融入这么多的内容的同时也带来的一个问题:对于算法的初学者来说,很可能不能真正把握作者字字句句背后真正所体现的思考的深度,简简单单的一句话背后,也许是另一个崭新的世界,所以这本书应该随着算法学习的深入,反复阅读,享受这探索的乐趣。

P.S.
书中点睛之笔:
FFT
Dijkstra's algorithm
Dynamic programming
Duality and Zero-sum games
Simplex algorithm
Reductions
Quantum algorithm

展开全文
有用 3 无用 0

您对该书评有什么想说的?

发 表

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

对“DPV:算法的历史与未来”的回应

Alan Duan 2013-01-18 20:54:45

thanks for your summary