您的位置:首页 > 其它

收录一些算法学习资料

2017-07-28 16:43 369 查看
作者:Felis sapiens

链接:https://www.zhihu.com/question/20370438/answer/38995813

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

推荐@peng_gong的我的算法学习之路。该文里提及了不少通用的数据结构与算法教材,以及作者阅读的体会。

如果文中的算法书都能hold住了,再接下两板斧:MIT的Advanced Data Structures和Advanced Algorithms两门课。另外还有一本Advanced
Data Structures: Peter Brass: 9780521880374: Amazon.com: Books,难度比MIT两门课小不少,篇幅适当,也讲了一些有趣的话题(making data structures dynamic/persistent, etc)

【领域特定篇】

Purely Functional Data Structures: Chris Okasaki: 9780521663502:
Amazon.com: Books
Pearls of Functional Algorithm Design: 9780521513388:
Computer Science Books @ Amazon.com

对函数式语言程序员有用。

Distributed Algorithms: An Intuitive Approach: Wan
Fokkink: 9780262026772: Amazon.com: Books

分布式算法书。篇幅短,介绍直白。

Hacker's Delight (2nd Edition): 9780321842688: Computer Science
Books @ Amazon.com

位运算黑魔法教材,对底层感兴趣的程序员可以看下。

Algorithms on Strings: Maxime Crochemore, Christophe Hancart,
Thierry Lecroq: 9781107670990: Amazon.com: Books
Parsing Techniques: A Practical Guide (Monographs
in Computer Science): Dick Grune, Ceriel J.H. Jacobs: 9780387202488: Amazon.com: Books

做字符串处理有用。

Foundations of Multidimensional and
Metric Data Structures (The Morgan Kaufmann Series in Computer Graphics): Hanan Samet: 9780123694461: Amazon.com: Books

空间数据结构,做图形学/地理数据库等有用。

Clever Algorithms: Nature-Inspired Programming
Recipes: Jason Brownlee: 9781446785065: Amazon.com: Books

少有的启发式算法综合教材,讲到的启发式算法很多,模拟退火/蚁群优化/遗传算法/神经网络等等均有涉及,有ruby示例。

【一代宗师篇】

An Introduction to the Analysis of Algorithms (2nd Edition):
Robert Sedgewick, Philippe Flajolet: 9780321905758: Amazon.com: Books

Sedgewick又一力作,如书名,介绍分析算法复杂度的各种数学技巧。

Handbook of Data Structures and Applications
(Chapman & Hall/CRC Computer and Information Science Series): Dinesh P. Mehta, Sartaj Sahni: 9781584884354: Amazon.com: Books

比Peter Brass的Advanced Data Structures还要Advanced得多的数据结构书,已经非常接近学术前沿了。可以当作wikipedia以外的数据结构参考书。。。

The Art of Computer Programming, Volumes 1-4A Boxed Set:
9780321751041: Computer Science Books @ Amazon.com
神作镇楼。

入门级书目就不说了,参见各种算法课本,其中大部分常见算法打一遍你就入门了。

《编程珠玑》:这本书,总感觉是给不懂算法的人讲一些算法的,经常玩算法的会感觉好多他讲得似乎很神奇的东西,其实很常见...不过这本基本上是面试必读书目,因为许多人都爱出这上面的题。

《算法导论》:经典书目,必读,如果有能力,也可以拿它当入门书。

《计算机程序设计艺术》(TAOCP):这个,我没读多少,太数学了,自己功底还不够。。得再修炼几年。

《算法艺术与信息学竞赛》(刘汝佳的黑书):这本书会给你提许多信息学竞赛中常用的算法,算法说得比较深入,但是很多时候书中的一个显然够你证明一个星期了。读这本书主要是让你知道原来还有这么种算法,具体这种算法该怎么去实现,你自己去找相关资料吧,因为这本书讲得确实不详细。

作者:张云聪

链接:https://www.zhihu.com/question/20370438/answer/14923646

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

作者:张俊博

链接:https://www.zhihu.com/question/20370438/answer/15325130

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

强烈推荐学习Coursera上的这个在线课程:Algorithms, Part I https://www.coursera.org/course/algs4partI

普林斯顿的课,如果你只懂得什么是栈、队列,却连一个set类都实现不出时,听这个课是最合适的了。免费的。

<img src="https://oscdn.geek-share.com/Uploads/Images/Content/202005/10/7be01538c3295c6a82cd40ecef00af97.jpg" data-rawwidth="188" data-rawheight="234" class="content_image" width="188">


PS:这个课马上就要结课了,视频、课件等资源会再保留一个星期左右,但下载到本地是合法、免费的,感兴趣的话抓紧下载。另外,Algorithms, Part II(https://www.coursera.org/course/algs4partII)马上又要开课,可以去选。时间充裕的话,最好能认真完成作业,作业通过类似ACM竞赛评测系统的一个自动评分系统提交。

Coursera上面的课绝大多数都是精品,不止是理工类的课。很多人文社科类的课也非常推荐。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: