五本必读的数据结构与算法书籍
Posted 小象
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了五本必读的数据结构与算法书籍相关的知识,希望对你有一定的参考价值。
通常数据结构与算法是作为一门大学课程开设的,但程序员们需要某种数据结构和算法来解决实际问题时可能还是挺头疼的。我碰到过很多这种情况,我认为原因之一是上学和上班时候人们看问题的角度不同。你把这个书当一个课本读的时候你可能只想着怎么考试时候考好点,而不是在实际中怎么应用这个知识。数据结构和算法是解决编程问题的核心,所以就算上学时候学过程序员也必须把它完全掌握。
算法有时候是很复杂难懂的,所以如果一本书可以将算法融入实际的问题中可以说是极大地降低了读者的理解的难度。Algorithms Unlocked就是这样的一本书,它介绍了寻找最短路径、搜索、排序、字符串、加密和压缩相关的常用算法,可以说我这本书买得非常值。但这本书有一个问题就是它只讲了算法,完全没讲到数据结构,所以最好可以跟一本数据结构的书搭配着看。
这本书好懂,也比较有用。讲解很清楚干净,而且也提供了实际的例子来帮助读者掌握特定的数据结构或者算法。这本书里面的例子都是C语言写成的,如果你懂C语言的话这是一本学习数据结构的非常不错的书。其实我C语言是不大好的,所以我在读这本书的时候用我熟悉的Java把书中的数据结构给实现了一遍,感觉从中获益不少。对初学者来说,它是学习数据结构与算法最好的书籍之一。
这本书我有两点很喜欢:一是示例都是Java写的,二是这本书可以作为参考书留着。这本书不光讲了数据结构与算法,还顺带讲了讲Java。所以对Java程序员来说是非常不错的。这本书讲算法的侧重点在图和最小生成树而且有很多习题供读者练习。虽不是最好,但也是一本很不错的书。
这本书可算是最好的讲算法的书之一。它是由四位作者合著的,其中之一是Thomas Cormen,他还写了我们之前提到的Algorithms Unlocked。这本书讲得很全面,也涉及了不少解决问题的方法比如贪心算法、动态规划和平摊分析等。这本书除了全面也很有深度,而且示例都是伪码所以就算刚刚开始学习编程也能看得懂。对程序员来说这绝对是一本必读的算法书。
这本书跟我们前面介绍的几本挺不一样的,它从将算法应用到面试问题的角度来进行讲解。如果你准备去面试百度、腾讯、阿里巴巴的软件工程师职位,读读这本书肯定会对你回答面试中的数据结构与算法问题大有帮助。我个人从这本书里学到了很多普通书本里学不到的东西。虽然它不是课本,也不是讲解算法的参考书,但还是很值得一读的。
译者:刘旭坤
* 小象科技原创作品,欢迎大家疯狂转发;机构、自媒体平台转载务必至后台留言,申请版权。
以上是关于五本必读的数据结构与算法书籍的主要内容,如果未能解决你的问题,请参考以下文章