有时有些读者问我,数据结构与算法该怎么学?有书籍推荐的吗?Java 初学者该怎么学等等。今天我就给大家介绍一些我这几年看过的一些自认为优秀的书籍,由于我看的大部分书籍可以说都是通用的,所以如果你有时间的话,还是挺建议看看的,特别是学生。
而且,我还给大家准备好了电子书,文末即可获取,感觉自己太良心!
数据结构与算法
数据结构与算法相关的书籍应该是我看的最多的一种数据吧,从大一到现在,从未间断过,下面就介绍下从大一到现在都看过哪些自认为优秀的书籍,注意,我不知道适不适合你,但我觉得看的过程中很舒服。
1、数据结构与算法分析(c 语言描述版)
我相信大部分人大学看的教程都是清华大学出版社严蔚敏写的那本书,说实话,作为初学者,那本书我没能坚持看下去,可能比较适合大佬看吧。我自己买了一本《数据结构与算法分析(c 语言描述版)》,挺薄的,不过感觉很棒,这本书让我学到了很多,个人感觉也挺容易懂的,代码实现是采用 C 语言来实现的,不是伪代码,如果你想学习数据结构,我觉得这本书是个不错的选择。班级里有挺多人看了《大话数据结构》,挺他们说也挺不错,不过我没看过。
2、挑战程序设计竞赛
这边书也是大一时看的,如果你想刷题,我挺推荐这本书,里面分初级、中级到高级。虽然每道题没有讲的特别详细,但当时都看懂了,真心不错。不过高级那部分我是没看,初级和中级看着挺舒服。也是学到挺多的,推荐给大家。
3、编程之美
不用说,很美,这本书是我今年刚入手看的,只能用 强烈推荐来形容,在这本书里,学到了挺多技巧,里面列举的题也不是特别难,目前看了 80%,真香。刚开始我听别人说如果要准备面试谷歌什么的建议看,我以为很难,迟迟没买来看,不过,我看的过程中,感觉还好,相信你也能看的懂,想学习算法、刷题的,强烈推荐。4、编程珠玑
这本老早就听别人说过了,去年看的,不过也是看了80%左右,和编程之美一样,强烈推荐,这本书里的题,说实话,感觉比编程之美有意思,5、程序员代码面试指南:IT 名企算法与数据结构题目最优解
这本书是牛客网的左程云写的,这本书重在带你刷题,每道题的解法也是讲的挺详细的,而且,这本书是一个专题一个专题带你刷题的,从栈和队列、链表、二叉树、递归与动态规划、字符串等等。我之前的链表打卡就是从这里找的。大家可以按照自己的弱点挑着刷。对了,代码是采用 Java 实现的,不过你会 C 语言的话,一样能看懂。真心不过,递归和动态规划里面好几道题都命中这次春招笔试了,当然,类似而已。然而,那时我还没有去看这本书动态相关的专题。推荐给大家。当然,数据结构与算法的还有很多优秀的书籍,我自己也看过不少,不过以上这些,我觉得很不错。自己也买过算法导论、算法第四版等,不过,没看的下去,就先介绍这么多吧,如果你有看过什么优秀的书籍,欢迎留言。
计算机基础
计算机基础这方面,我看的大多数都是学校的教材,这些就不介绍了,不过自己也买一些课外的,感觉很不错,介绍给大家。
1、程序是怎么跑起来的
我觉得,了解程序是如何跑起来是每个程序员都必须掌握的,我看过相关的书籍是学校发的操作系统,操作系统有多么枯燥我就不说了。不过这本《程序是怎么跑起来的》的书,我觉得就算你是完全不懂的小白也能看懂,如果你对学习操作系统感兴趣,或许可以买这本书当作入门,像讲故事一样,讲的挺有趣的,两天就能看完了。不过,讲的不深,想要再深入的话,还得看操作系统相关书籍。2、计算机网络:自顶向下
在学习计算机网络之前,我在哔哩哔哩看过一个视频,韩立刚讲的,说实话,讲发非常不错,我敢保证比 80% 讲的好,入门建议刷一波。不过视频适合入门,书还是要买来看,接着我是买了《计算机网络:自顶向下》这本书,这本书我觉得也是讲发很不错,推荐买来刷一波。
图解 HTTP
计算机网络那本书对于 http 并没有讲很多,如果你想继续了解 http 的话,就可以考虑看《图解http》这本书了,居然是 图解,那么将会有大量的图片,让你轻松读懂晦涩的知识点,相信你两天就能看完了,不过我建议你最好做一下笔记,不过,有些东西你很快就忘光光了,笔记面试的时候,还得要你把一些东西说出来。MySQL
1、MySQL必知必会
MySQL 的书看的真心少,不过感觉《MySQL必知必会》讲的好不错,想学习 sql 语句的可以看看。2、MySQL技术内幕:InnoDB存储引擎
学习MySQL,InnoDB 引擎是必须得学的,这本书讲的真心不错,讲了很多原理,例如索引、锁等相关的原理,如果说《MySQL必知必会》是入门,那么这本就是进阶了,这本书我很早就买了,不过也是最近刚看,不过我是看了极客时间的 MySQL 相关专栏再来看这本书的,感觉收获不少,推荐。MySQL 业界最火的可能就是《高性能MySQL》,这本书我也买了,看了一些一直没去看,好厚啊,好像80-90 买的,亏大。如果你想折腾,或许高性能这本书可以看看,不过,建议挑着看,别从头到尾看,除非你时间很多。
Java 相关
由于我的主要使用语言是 Java,所以 Java 这方面也是看过不少书籍,下面就介绍一些我觉得学 Java 不可错过的书籍吧。
Java编程思想
编程思想这本书个人感觉不错,不过不适合入门,我是看尚学堂高淇 300 集视频入门的,哔哩哔哩直接搜索就行了,说时候,讲的是非常非常不错,初学者强烈推荐这个视频。我说了,单单视频是不够的,之后入手了《Java编程思想》这本书,不过我是挑着章节看的,看了之后,解决了非常非常多的疑惑,感觉自己对 Java 的理解更上一层楼了,不过,这本书看的时候,你可能会觉得有点啰嗦,不过没办法,国外的书籍大部分都这样,喜欢扯,不过我也是挺喜欢这种扯的,总之,强烈推荐(不建议从头看,可以挑着看)
Java 并发编程艺术
学编程,并发是避免不了的,我觉得《Java 并发编程艺术》这本书讲的非常不错,不过说实话,也是挺难的,我一下子就把这本书看完了,然后,看完之后感觉啥也忘了,然后第二次看的时候,感觉比第一次好挺多。总之这本书,我觉得要多看几次,你会有意外的收获。特别是后面,可能刚开始看有点懵,那是因为你菜。不过,多看几次就好了,学这本,听说应付面试也是非常不错的,推荐看。对了,还要 《Java 并发编程实战》,也是挺不错,不过我只看了一些,感觉自己很多都懂(感觉要被打),就有点看不下去了,所以没看,你们自行选择。
深入理解 Java 虚拟机
呵呵,这本书,不用说,每个学 Java 的我觉得都应该看,不过我可以告诉你的是,第一遍你会看的很难受,确实挺难,比较底层。不过,想要进阶,就得要 死磕,大家看的时候,有些章节可以先跳过,例如第一章。我是从第三部分的第六章开始看起的,看完再回头看前面的章节,至于为啥这样,我是在某某知识星球听大佬这样说的,所以就这样干了。总之,强烈推荐,以及多看几遍。其他
1、大型网站技术结构:核心原理与案例分析
这本书讲的是,一个网站从简单到类似与淘宝这种大型的网站,都经过那些迭代。不过讲的不深,看名字很高级,不过并不难,我觉得挺不错,感兴趣的可以看看,两天就能看完了。1、黑客与画家
这本书并不是讲黑客或画家的哈,这本书更多的是讲一种思维。我挺喜欢的,觉得挺不错,不是技术书籍。我觉得作为一个程序员,也不能一味看技术书籍,偶尔还是得看看其他方面的书籍,或许,可以拓展我们的思维,这本书就很不错了,推荐给大家。最后
一不小心已经介绍了十几本了,介绍的都是属于比较基础的书籍,我觉得打好这些基础还是挺重要的。上面的这些书,基本都是我全部看完的了,觉得真心不错,所以推荐给大家,以后再给大家推荐点高级的书哈。
重点来了,这些书,我都给你们准备好电子版的了,一本一本搜集过来的。获取的方式也非常简单。由于创建的链接有时候非常容易失效,我也不好及时编辑文章来更新,所以你可以关注我的微信公众号,回复**"电子书"**即可获取。
如果你觉得这篇内容对你挺有启发,我想邀请你帮我三个忙,让更多的人看到这篇文章:
1、点赞,让更多的人也能看到这篇内容(收藏不点赞,都是耍流氓 -_-)
2、关注我,让我们成为长期关系
3、关注公众号「苦逼的码农」,里面已有100多篇原创文章,我也分享了很多视频、书籍的资源,以及开发工具,欢迎各位的关注,第一时间阅读我的文章。