算法技术手册 高清pdf是为用户们带来的高清pdf电子图书,让你轻松的对照其内的各类算法,实现工作中的程序设计,制作出拥有智能效果的各类软件,获得不错的市场反响,快来绿色资源网下载吧!
官方介绍《算法技术手册》:开发健壮的软件需要高效的算法,然后程序员们往往直至问题发生之时,才会去求助于算法。《算法技术手册》讲解了许多现有的算法,可用于解决各种问题。通过阅读它,可以使您学会如何选择和实现正确的算法,来达成自己的目标。另外,书中的数学深浅适中,足够使您可以了解并分析算法的性能。
使用效果《算法技术手册》提供了高效的代码解决方案,使用多种语言进行编写,让您可以轻松地将其应用于特定的工程当中。通过《算法技术手册》,您可以:
解决特定代码的问题,或者提升既有解决方案的性能
较之理论而言,《算法技术手册》更专注于应用。
了解算法预期的性能,以及它达到最高性能时所需要的条件
发现不同算法之间相似的设计哲学
快速找到与您所解决的问题相关的算法,并决定哪个算法才是最适合的那一个
探索使用C、C++、Java以及Ruby实现的算法解决方案以及开发小贴士
学习高级数据结构,来提升算法的性能
通过《算法技术手册》,您能学到如何提升算法的性能,这将是您的软件应用程序走向成功的关键。
特色介绍算法界的圣经必然是算法导论,但是对于非专业科班的coder来说,这本书比算法导论更实用。读这本是想换个角度来研究下算法。虽然很多东西已经通过前者有所了解,这里就谈谈二者的不同之处。
一方面,数学性的推导和证明还是CLRS比较擅长,后者大多数情况只是尽量做到让读者能够理解而已,这一点在上面的评论“可以作为浅显易懂的入门教材”一文也指出了,我就不再细谈了。
另一方面,本书对于实践是非常重视的,在介绍算法的同时不停留在代码和思路本身,同时也会讲一些实践细节,甚至通过专门的章节,也即书中的War Story来加深读者对算法的理解。不过很惭愧的是,由于时间有限,War Story我基本没读几篇,浅尝辄止而已。
更有指导意义的是,书中的第二部分收集和归类大量的算法问题,并对这些问题的求解做出了分析。这个所谓的分析就是,把问题具体化,在不同情况下都选择相应的最优算法。尽管没有给出可以直接用来“复制-粘贴”的代码,但这样做明显比“笼统地写出一个问题—给出一个唯一答案”的做法强得多。当然,通过对于第一部分算法介绍的阅读,第二部分可以先做泛读,遇到具体问题时再来查阅对应的解决方案的指导,此时还能根据给出的参考文献进行深入的阅读。这种细致全面的安排可以看出作者的用心之处。
阅读感言再谈谈一些其他的读书收获吧,下面是我印象比较深的地方:
1.本书第一部分每个章节的练习题中包含了面试题部分,起初还不怎么注意,直到被有些难住时,google其解法发现居然是货真价实的google、ms、amazon面试题!如果即将进行参加招聘面试笔试,这部分题目还是值得做做的。虽然通过作者的网页和google、stackoverflow等可以找到大部分的解答,不过我还是抽空亲自把这部分全部题目做完并进行了总结,有兴趣的读者可以参照文末链接。
算法设计手册英文版:《算法设计手册》(The Algorithm Design Manual)是本比较经典的算法书了。如果说《算法导论》偏向于数学,那么《算法设计手册》更偏向于工程应用(至于《计算机程序设计艺术》,目前我是没时间通读,只是偶尔当工具书查查,就不提了)。前者的课后题中的面试题部分挺潮的,如果在google上搜索一下,发现很多都是名企考过的,或许是因为第二版出版时间比较近的缘故?我不大相信是作者自己出的然后被大公司拿去面试的,而是作者收录的考过的面试题。有了这一层筛选,这些面试题质量有保证啊。
2.CLRS在介绍DFS时写成了一个子程序,后面的拓扑排序、强联通分支等使用到DFS的算法将其调用;而本书的DFS是直接写成了一个框架(这种做法你还会在回溯法、近似字符串匹配等地方看到),通过修改其不同的子函数来完成不同的功能如拓扑排序、强联通分支。我不评价哪种更好,只是CLRS版的DFS先入为主,我以CLRS版为准。
3.在读完《算法设计手册》的第7章回溯法之前,我对回溯法的认知完全是云里雾里。虽然也写过不少回溯法的程序,甚至做过剪枝处理,但它们都局限于具体问题的求解,完全没有一个全局性的概念。这本书向我展示了回溯法的框架,可以套用至很多回溯法程序(然后再进行简化),一举心中的廓清迷雾,这个章节很建议阅读。