《算法图解》
通常的算法书让人昏昏欲睡,莫测高深,让人读得异常费劲,备受打击。
但是这本书不同,这是一本“”好看“的书。说它好看,这本书很薄,以视觉化的方式表达信息,将复杂,抽象的理论,阐释的通俗易懂。就算法入门级别的角度来说,很可能不会再碰到比这本更简单易懂的了。
如果你刚刚开始接触算法,或者在算法方面还比较薄弱,建议从这本书开始,把复杂的事情用说简单,这本书做到了。
《算法》
这本书是算法领域的经典参考书,全面讲述了算法和数据结构的必备知识。全面论述了排序,搜索,图处理和字符串处理的算法和数据结构,涵盖每位程序员应知应会的50种算法。
全书算法以java语言实现,即便没有学过java,第一章也能够带你入门,在语法方面没有问题。本书有大量的图解,详尽的代码和讲解,是极佳的数据结构入门书籍。
这本书讲得很细致,很透彻,不是侧重于数学推导,而是注重于算法的实。作为初学者,读这本书是一个很明智的选择,它是非常好的算法入门书。
《算法导论》
本书选材经典、内容丰富、结构合理、逻辑清晰,将严谨性和全面性融为一体,深入讨论各类算法,并着力使这些算法的设计和分析能为各个层次的读者接受。
这不是一本入门级的算法书,需要有一定数学基础以及算法入门知识,否则它只能作为你认为牛X,但是永远也读不完的书之一,还不能压泡面:-(
别把这本书做入门书,说是入门书的人要么就是特别厉害而且特别不负责任的,要么就是啥都不懂的人以为看到“导论”两个字就认为特别基础的人。
关于数学,必须是学过高等数学,矩阵和离散数学的,如果没学过这几本,那么里面的东西也真够呛。
如果你想成为算法上不弱于大多数人的程序员,那么请耐心读完这本书,这是一本需要一定的耐心和毅力才能读懂的经典
《计算机程序设计艺术・卷1:基本算法》
高德纳(Donald E. Knuth)大神的著作,别被”基本算法”这几个字误导了,这本书的难度根本就不是基础的:-)
如果你连大O小o都搞不清楚, NP和NP-hard都搞不清楚,基本的插值多项式都不知道;或者连算法导论都没看,对数学分析没有兴趣,认为数学只是工具;写个算法不会用伪代码而一味的用C++或着JAVA来描述,那么可以说不必看这本书了。这里是数学的世界,渗透着机器处理问题的新式思维,一本很多TCS著名学者都不敢轻言“看懂”的书。
这套书还有其他卷,有兴趣的读者可以搜索一下看,这是一套计算机世界的高级内功心法,需要极大的耐心和毅力。如果读不懂,那也不要过于纠结,我也不懂:)