虽然NEUACM有指导教师了。但是显然还是我那句话,别不报信心,也别指望他能改变什么。
那天boss让我给他买几本ACM的书,报销。点名要的是俞经善的那本,当然那本一定要买了,然后觉得黑书还是必须要有的,又买本黑书,后来想起LRJ出了本新的针对新手的书,就一并买了。
两本入门书都是200页多点,16开,一个24一个25。现在造纸成本果然高了。
不认识刘汝佳的话我觉得就没啥可说的了……不认识俞经善我可以大致介绍下:
此人哈尔滨工程大学教授一枚,貌似主管ACM等竞赛。因为我说过,哈工程、航电这类科研基本不会有建树的学校只能靠这种竞赛来提高名声,于是对ACM、数学建模很重视。当然东大对数学建模很重视对ACM不是很重视。按照郭阳的话讲,搞ACM的老师不会在评职称上有任何好处,也没有对应的岗位(然后他还说我们应该建议软件学院搞个专门的岗位负责这个……)。按我自己的话说,谁也不差一年多补助三五千块钱,虽然数学建模也一样,但是指导教师比学生还酱油,ACM可不行。我第一次见他是在省赛,第一反应是跟高中一个OI学长一个学校,开始以为是个挂名教授打酱油,然后发现他居然能熟练的说出“最小生成树”、“动态规划”等学术名词,然后我就刮目相看起来- -……其实这人还是不错的,起码大学尤其是这等级的大学找到一个能玩明白ACM的老师也不是很容易,当然更重要的问题是有没有动力。
他讲课怎样不知,科研能力估计没多少。所以也不知道出的书能是什么水平。大学老师出书跟社会上的(包括LRJ)不太一样,因为出教材出书和发论文一样都是评定职称的指标,很多讲课好学术不行的老师想评教授必须或者只能出教材,第一作者x本第二作者y本你就是教授。所以俞经善这本书他后面排的那几个名字我估计都是副教授吧。还有个问题是出书不一定要自己写,很多老师(包括貌似我院某副院长)出书都是找个学生写然后挂自己名,学生得到的好处是毕业容易或者给点钱,副教授们拿这些挂着自己名的东西不仅拿更多的钱(还取决于销量),还提升当教授的砝码。跟国际会议论文一样,愿打愿挨。
至于LRJ出书的原因呢。往好了想可以跟俞经善的动机一样是为了推广,但一定有人觉得是为了赚钱。所以我们还是愿意善意假定一下的,毕竟出本好书对谁都有好处,无论他自己得到了什么利益,我们看书得到提升才是真正有意义的。
———————————————————
下面简要对两本书作一个评价,看官可以根据我的看法决定买哪本。毕竟ACM的初学书太少,以前我不得不推荐那些C语言还学的不是很明白的人去看高中王建德之类的书,现在起码有点更贴近“大学生生活”的书出来。
算法艺术与信息学竞赛•算法竞赛入门经典
http://www.amazon.cn/gp/product/B002WB0U4Q/ref=oss_product
ACM程序设计竞赛基础教程
http://www.amazon.cn/gp/product/B0047T6B0S/ref=oss_product
先看那个表明版次印刷次数的那个。LRJ的书09年11月第一版,11年第四次印刷,已经印了10000多册。俞经善那本去年10月第一版,第一次印刷,3000册。
哈工程那本有一页副校长写的序,介绍了下哈工程ACM事业艰苦创业史,然后俞经善写前言,继续艰苦创业。然后把学生的名字提了下(可怜这些劳动力了)。LRJ的那本没有序只有前言(我觉得其实前言就应该叫序的……)讲了自己小时候的经历,然后将自己的教学经历尤其是OI,而且我对他讲的Pascal的问题很同意,据说NOI让用STL了也算一种引导吧。接下来写本书内容,然后是致谢。
顺便说一句,有个地方挺中国特色的,好多人写教材的(尤其是体制内的)序的部分最后都说什么能力不足,时间有限,抛砖引玉之类的,而国外的书一般就是感谢他她它(确实有感谢自己小猫小狗的)。哪个更实在应该都能分辨吧。
前言都是浮云,当然我挺爱看各类教材的前言的。就跟讲故事一样。接下来说目录。
LRJ的那本书指导思想是“从0开始”,所谓的零是连编程都不懂的人。所以刘汝佳的书先讲C语言,讲的基本就是一个OIer需要会的部分,点到为止,然后指针也说了点。第二部分是算法,都是那种纯理论的,比如排序、高精、数据结构、分治二分等等。第三部分叫竞赛部分,结合前面的东西讲竞赛的东西,比如DP图论网络流。
俞经善那本没讲语言,也没区分算法和竞赛(其实也不是很必要区分),就是从最简单的到最难的分N章慢慢讲,中规中矩。总之两本书在内容涉猎上基本就是差在一个有C一个没C上。当然LRJ那本最后一部分讲了点shell、Linux基础甚至gcc、gdb,而俞经善那本最后列了十多道题。感觉靠书上讲的那点东西不可能学会进程什么的,但主要还是个引导告诉新手有这么个东西,而俞经善选的那些题我还没看,不知道选取标准是什么。
任何一本竞赛书都是说这些,主要看讲的怎么样。我随便翻了看下dijkstra,算是很经典的算法。然后发现,俞经善的那本书,讲的灰常简略,三行基本思想,4行算法步骤,半页代码就没了。其俞算法也类似,总之讲的很简略,甚至我觉得新手不一定能看得懂。而LRJ那本虽然也只是介绍思想给点代码,但还是比前者那本详细一些,而且讲了临接表上的dijkstra,讲了堆优化(是用STL的 优先队列)。
然后看网络流,LRJ基本就是简化版的算法导论,甚至图的风格都一样。把增广路一类都讲了下,而俞经善那本直接列两个定理作为理论基础然后直接讲算法上代码,感觉比较坑爹……
总之吧,一句话:要刘汝佳,不要俞经善;要大牛,不要教授。
发表回复