用户名: 密码: 验证码:           网站地图 高级搜索 RSS订阅 收藏本站
Google
您的位置:首页>>读书>>读书>>阅读资讯:Algorithms:算法之美

Algorithms:算法之美

[ 来源:豆瓣 | 阅读:次 | 更新日期:2008-3-14 17:57:37 | 评论 0 条 | 我要投稿 ]
  这是本很新的书,06年末发行,07年才慢慢出现于人们的视野。我在08年初得知这本书,那会我还很奇怪:都什么年月了,怎么还有人写算法教材——这么“经典”的工作,不是上个世纪就被人做完了吗。
  
  读了这本Algorithms,我才知道:这才是我心中的算法书,我等待这样一本书已经很多年了。它的确当得起这个名字。
  
  书的三位作者:Sanjoy Dasgupta, Papadimitriou, Umesh Vazirani。
  
  其中,Umesh堪称计算机理论界的第二名师(第一名师是他自己的导师Manuel Blum),他带过的学生们犹如一个理论计算机科学新生代的全明星队。另一个作者Papadimitriou可算是理论界的第二名笔(第一非Knuth莫属),他的书Computational Complexity和Combinatorial optimization堪称理论计算机科学最好读的专业书,他业余还写了本小说"Turing"。第三个作者Dasgupta是个算法方向的研究者,他最年轻,本身就是Umesh的学生,相比前面二位也没什么噱头——可他注定要因这本Algorithms而被载入计算机科学的史册。
  
  在这本书之前,算法的经典教材首推CLRS的算法导论。算法导论让人印象深刻的,是它内容的全面翔实,还有它一千两百页的厚度。 字串6
  
  而见到这本Algorithms时,你会震惊于它的薄。我从亚马逊收到这本书时,还以为拿错了包裹。
  
  可读过之后,你就会折服于它的美。
  
  这是一本可以给人带来巨大阅读乐趣的专业书籍。作者娓娓道来,又惜墨如金。用极精炼的语言,为我们指明了一条通向那些美丽算法的线索。我要由衷地说:这本书不仅仅是一些结果的集合,更是一段美好的旅程。我对书中涉及的内容已然熟悉,但读过之后仍感收获良多,对算法这门学问又多了些认识。真的是,写书当如是。
  
  
  对我来说,算法的教与学有两个困难的地方:
  
  其一,我们学习了那些经典的算法,除了赞叹一下设计的巧思,但总难免问上一句:怎么想到的?对学生来说,这可能是最费解、也最让人窝火的地方。我们下再多的功夫去记忆书上的算法、去分析这些算法的效率,却终究不能理喻得到这些算法的过程。心理盘算着:给我一个新问题,让我设计个算法出来,我能行吗?答案是:不知道。
  
  可这偏偏又是极重要的,无论作研究还是实际工作,一个计算机专业人士最重要的能力,就是解决问题——解决那些不断从理论模型、或者从实际应用中冒出来的新问题。
字串7

  
  其二,算法作为一门学问,有两条正交的线索。一个是算法处理的对象:数、矩阵、集合、串(strings)、排列(permutations)、图(graphs)、表达式(formula)、分布(distributions),等等。另一个是算法的设计思想:贪婪、分治、动态规划、线性规划、局部搜索(local search),等等。这两条线索几乎是相互独立的:同一个离散对象,例如图,稍有不同的问题,例如single-source shortest path和all-pair shortest path,就可以用到不同的设计思想,如贪婪和动态规划;而完全不同的离散对象上的问题,例如排序和整数乘法,也许就会用到相同的思想,例如分治。
  
  两条线索交织在一起,该如何表述。对学生而言,不同离散对象的差别是直观的——我们已经惯于在一章里面完全讲排序、而在另一章里面完全讲图论算法;可是对算法而言,设计思想的差别是根本的,因为这是从问题的结构来的:不同离散对象上面定义的问题,可以展现出类似的结构,而这结构特征,就是支持一类算法的根本,也是我们设计算法的依据。
共2页: 上一页 1 [2] 下一页
Tags:Algorithms:算法之美
责任编辑:苹果小王子
上一篇:Algorithms  下一篇:十二星座极品好男人
您的评论
用户名:新注册) 密码: 匿名评论 [所有评论]

·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为