一次失败的尝试
2010-07-04
我注意到《算法之道》这本书主要是因为作者的另外一本书——《计算机的心智:操作系统之哲学原理》。因为这学期有操作系统课程,我认真把《操作系统之哲学原理》看了一下,书写的比较好,有助于学习操作系统的人。
话说回来,看完《算法之道》这本书,我还是比较失望,没有写出特色。很多人特别是国内的人写书都是把理论或者知识简单罗列一遍,读者没有看下去的欲望。作者虽然有自己的理解在书里面,但我觉得内容不是国内读者特需要的。介绍算法的书很多,但是讲的好没多少。我觉得讲算法的书有几个方向,一、只讲理论,二、介绍理论,也有代码实现,三、就某一个领域例如图算法做深入研究,四、面向读者,把算法思想讲的通俗易通(以上概括的可能不全)。就国内读者而言,我觉得需要的不是算法分析的书,这方面已经有《计算机程序设计艺术》、《算法导论》等讲得非常好的国外书,我觉得读者更需要的是能把算法讲得通俗易懂的书。
在《算法之道》这本书里,作者尝试从多种角度,趣味性地讲算法,但收效不是很大。很多讲算法的书都是对某个具体问题分析,就事论事,但作者是从另一个方向分析算法,从逻辑本身讲,讲动态规划、贪婪思想、概率分析、摊销分析等,有可取之处。但我觉得书上的公式和纯理论分析还是有点多,读者看起来很累,不能轻松有效地理解算法思想。我觉得作者应该多讲一些有趣的实例,从实例分析中剥离出其中的逻辑和算法,这样读者看起来更轻松。
总体来说,这本书还是有一些特色,比较适合有一定数学功底,擅长逻辑推理,同时希望对算法有进一步了解的人。这本书不适合对算法基本不了解的人,也不适合对算法思想有比较深的理解的人。