问题：﻿找工作用，java类的，算法书。？ 最好深入浅出，图文并茂。
话题：﻿Java、计算机科学、Java编程
回答：﻿克服面试中的算法关，首推:Leetcode。其次，Java领域最权威的算法书就是《算法第四版》（推荐，豆瓣评分9.3，0.4K+人评价）：Java语言描述，算法领域经典的参考书，全面介绍了关于算法和数据结构的必备知识，并特别针对排序、搜索、图处理和字符串处理进行了论述。书的内容非常多，可以说是Java程序员的必备书籍之一了。Java书籍推荐Java基础《HeadFirstJava》(推荐，豆瓣评分8.7，1.0K+人评价)：可以说是我的Java启蒙书籍了，特别适合新手读当然也适合我们用来温故Java知识点。《Java核心技术卷1+卷2》（推荐）:很棒的两本书，建议有点Java基础之后再读，介绍的还是比较深入的，非常推荐。这两本书我一般也会用来巩固知识点，是两本适合放在自己身边的好书。《JAVA网络编程第4版》：可以系统的学习一下网络的一些概念以及网络编程在Java中的使用。《Java编程思想(第4版)》（推荐，豆瓣评分9.1，3.2K+人评价）：这本书要常读，初学者可以快速概览，中等程序员可以深入看看java，老鸟还可以用之回顾java的体系。这本书之所以厉害，因为它在无形中整合了设计模式，这本书之所以难读，也恰恰在于他对设计模式的整合是无形的。并发《Java并发编程之美》（推荐）：2018年10月出版的一本书，个人感觉非常不错，对每个知识点的讲解都很棒。《Java并发编程的艺术》（推荐，豆瓣评分7.2，0.2K+人评价）：这本书不是很适合作为Java并发入门书籍，需要具备一定的JVM基础。我感觉有些东西讲的还是挺深入的，推荐阅读。《实战Java高并发程序设计》（推荐,豆瓣评分8.3）：书的质量没的说，推荐大家好好看一下。《Java高并发编程详解》（豆瓣评分7.6）：2018年6月出版的一本书，内容很详细，但可能又有点过于啰嗦，不过这只是我的感觉。JVM《深入理解Java虚拟机（第2版）周志明》（推荐，豆瓣评分8.9，1.0K+人评价）：建议多刷几遍，书中的所有知识点可以通过JAVA运行时区域和JAVA的内存模型与线程两个大模块罗列完全。《实战JAVA虚拟机》（推荐，豆瓣评分8.0，1.0K+人评价）：作为入门的了解Java虚拟机的知识还是不错的。Java8新特性《Java8实战》（推荐，豆瓣评分9.2）：面向Java8的技能升级，包括Lambdas、流和函数式编程特性。实战系列的一贯风格让自己快速上手应用起来。Java8支持的Lambda是精简表达在语法上提供的支持。Java8提供了Stream，学习和使用可以建立流式编程的认知。《Java8编程参考官方教程》（推荐，豆瓣评分9.2）：也还不错吧。代码优化《重构_改善既有代码的设计》（推荐）：豆瓣9.1分，重构书籍的开山鼻祖。《Effectivejava》（推荐，豆瓣评分9.0，1.4K+人评价）：本书介绍了在Java编程中78条极具实用价值的经验规则，这些经验规则涵盖了大多数开发人员每天所面临的问题的解决方案。通过对Java平台设计专家所使用的技术的全面描述，揭示了应该做什么，不应该做什么才能产生清晰、健壮和高效的代码。本书中的每条规则都以简短、独立的小文章形式出现，并通过例子代码加以进一步说明。本书内容全面，结构清晰，讲解详细。可作为技术人员的参考用书。《代码整洁之道》（推荐，豆瓣评分9.1）：虽然是用Java语言作为例子，全篇都是在阐述Java面向对象的思想，但是其中大部分内容其它语言也能应用到。阿里巴巴Java开发手册（详尽版）https://github.com/alibaba/p3c/blob/master/阿里巴巴Java开发手册（详尽版）.pdfGoogleJava编程风格指南：http://www.hawstein.com/posts/google-java-style.html网络《图解HTTP》（推荐,豆瓣评分8.1,1.6K+人评价）：讲漫画一样的讲HTTP，很有意思，不会觉得枯燥，大概也涵盖也HTTP常见的知识点。因为篇幅问题，内容可能不太全面。不过，如果不是专门做网络方向研究的小伙伴想研究HTTP相关知识的话，读这本书的话应该来说就差不多了。《HTTP权威指南》（推荐,豆瓣评分8.6）:如果要全面了解HTTP非此书不可！操作系统《鸟哥的Linux私房菜》（推荐，，豆瓣评分9.1，0.3K+人评价）：本书是最具知名度的Linux入门书《鸟哥的Linux私房菜基础学习篇》的最新版，全面而详细地介绍了Linux操作系统。全书分为5个部分：第一部分着重说明Linux的起源及功能，如何规划和安装Linux主机；第二部分介绍Linux的文件系统、文件、目录与磁盘的管理；第三部分介绍文字模式接口shell和管理系统的好帮手shell脚本，另外还介绍了文字编辑器vi和vim的使用方法；第四部分介绍了对于系统安全非常重要的Linux账号的管理，以及主机系统与程序的管理，如查看进程、任务分配和作业管理；第五部分介绍了系统管理员(root)的管理事项，如了解系统运行状况、系统服务，针对登录文件进行解析，对系统进行备份以及核心的管理等。数据结构与算法《大话数据结构》（推荐，豆瓣评分7.9,1K+人评价）：入门类型的书籍，读起来比较浅显易懂，适合没有数据结构基础或者说数据结构没学好的小伙伴用来入门数据结构。《数据结构与算法分析：C语言描述》（推荐，豆瓣评分8.9，1.6K+人评价）:本书是《DataStructuresandAlgorithmAnalysisinC》一书第2版的简体中译本。原书曾被评为20世纪顶尖的30部计算机著作之一，作者MarkAllenWeiss在数据结构和算法分析方面卓有建树，他的数据结构和算法分析的著作尤其畅销，并受到广泛好评．已被世界500余所大学用作教材。《算法图解》（推荐，豆瓣评分8.4，0.6K+人评价）：入门类型的书籍，读起来比较浅显易懂，适合没有算法基础或者说算法没学好的小伙伴用来入门。示例丰富，图文并茂，以让人容易理解的方式阐释了算法.读起来比较快，内容不枯燥！《算法第四版》（推荐，豆瓣评分9.3，0.4K+人评价）：Java语言描述，算法领域经典的参考书，全面介绍了关于算法和数据结构的必备知识，并特别针对排序、搜索、图处理和字符串处理进行了论述。书的内容非常多，可以说是Java程序员的必备书籍之一了。数据库《高性能MySQL》（推荐，豆瓣评分9.3，0.4K+人评价）：mysql领域的经典之作，拥有广泛的影响力。不但适合数据库管理员（dba）阅读，也适合开发人员参考学习。不管是数据库新手还是专家，相信都能从本书有所收获。《Redis实战》：如果你想了解Redis的一些概念性知识的话，这本书真的非常不错。《Redis设计与实现》（推荐，豆瓣评分8.5，0.5K+人评价）：也还行吧！《MySQL技术内幕-InnoDB存储引擎》（推荐，豆瓣评分8.7）：了解InnoDB存储引擎底层原理必备的一本书，比较深入。系统设计设计模式设计模式:可复用面向对象软件的基础（推荐，豆瓣评分9.1）：设计模式的经典！HeadFirst设计模式（中文版）（推荐，豆瓣评分9.2）：相当赞的一本设计模式入门书籍。用实际的编程案例讲解算法设计中会遇到的各种问题和需求变更（对的，连需求变更都考虑到了！），并以此逐步推导出良好的设计模式解决办法。常用框架《深入分析JavaWeb技术内幕》：感觉还行，涉及的东西也蛮多。《Netty实战》（推荐，豆瓣评分7.8，92人评价）：内容很细，如果想学Netty的话，推荐阅读这本书！《从Paxos到Zookeeper》（推荐，豆瓣评分7.8，0.3K人评价）：简要介绍几种典型的分布式一致性协议，以及解决分布式一致性问题的思路，其中重点讲解了Paxos和ZAB协议。同时，本书深入介绍了分布式一致性问题的工业解决方案——ZooKeeper，并着重向读者展示这一分布式协调框架的使用方法、内部实现及运维技巧，旨在帮助读者全面了解ZooKeeper，并更好地使用和运维ZooKeeper。《Spring实战（第4版）》（推荐，豆瓣评分8.3，0.3K+人评价）：不建议当做入门书籍读，入门的话可以找点国人的书或者视频看。这本定位就相当于是关于Spring的新华字典，只有一些基本概念的介绍和示例，涵盖了Spring的各个方面，但都不够深入。就像作者在最后一页写的那样：“学习Spring，这才刚刚开始”。《RabbitMQ实战指南》：《RabbitMQ实战指南》从消息中间件的概念和RabbitMQ的历史切入，主要阐述RabbitMQ的安装、使用、配置、管理、运维、原理、扩展等方面的细节。如果你想浅尝RabbitMQ的使用，这本书是你最好的选择；如果你想深入RabbitMQ的原理，这本书也是你最好的选择；总之，如果你想玩转RabbitMQ，这本书一定是最值得看的书之一《SpringCloud微服务实战》：从时下流行的微服务架构概念出发，详细介绍了SpringCloud针对微服务架构中几大核心要素的解决方案和基础组件。对于各个组件的介绍，《SpringCloud微服务实战》主要以示例与源码结合的方式来帮助读者更好地理解这些组件的使用方法以及运行原理。同时，在介绍的过程中，还包含了作者在实践中所遇到的一些问题和解决思路，可供读者在实践中作为参考。《第一本Docker书》：Docker入门书籍！网站架构《大型网站技术架构：核心原理与案例分析+李智慧》（推荐）:这本书我读过，基本不需要你有什么基础啊~读起来特别轻松，但是却可以学到很多东西，非常推荐了。另外我写过这本书的思维导图，关注我的微信公众号：“Java面试通关手册”回复“大型网站技术架构”即可领取思维导图。《亿级流量网站架构核心技术》（推荐）：一书总结并梳理了亿级流量网站高可用和高并发原则，通过实例详细介绍了如何落地这些原则。本书分为四部分：概述、高可用原则、高并发原则、案例实战。从负载均衡、限流、降级、隔离、超时与重试、回滚机制、压测与预案、缓存、池化、异步化、扩容、队列等多方面详细介绍了亿级流量网站的架构核心技术，让读者看后能快速运用到实践项目中。软件底层《深入剖析Tomcat》（推荐，豆瓣评分8.4，0.2K+人评价）：本书深入剖析Tomcat4和Tomcat5中的每个组件，并揭示其内部工作原理。通过学习本书，你将可以自行开发Tomcat组件，或者扩展已有的组件。读完这本书，基本可以摆脱背诵面试题的尴尬。《深入理解Nginx（第2版）》：作者讲的非常细致，注释都写的都很工整，对于Nginx的开发人员非常有帮助。优点是细致，缺点是过于细致，到处都是代码片段，缺少一些抽象。其他《黑客与画家》：这本书是硅谷创业之父，YCombinator创始人PaulGraham的文集。之所以叫这个名字，是因为作者认为黑客（并非负面的那个意思）与画家有着极大的相似性，他们都是在创造，而不是完成某个任务。推荐一个学习过程中看的仓库笔主自己开源的一个Java学习与面试项目，目前已经几个月是JavaTrending榜第一名了，目前已经有33k+star,我自己有点不那么实至名归，我也只是靠平时业余时间来维护，大家可以看一下，因该对大家学习Java有一点没有帮助。这个仓库里面有常见知识点总结（目前还在继续完善中）、常见面试题、备战面试系列文章以及BATJ真实面经等内容。对于Java初学者来说：本文档倾向于给你提供一个比较详细的学习路径，让你对于Java整体的知识体系有一个初步认识。另外，本文的一些文章也是你学习和复习Java知识不错的实践；对于非Java初学者来说：本文档更适合回顾知识，准备面试，搞清面试应该把重心放在那些问题上。要搞清楚这个道理：提前知道那些面试常见，不是为了背下来应付面试，而是为了让你可以更有针对的学习重点。Snailclimb/JavaGuide​github.comJava工程师必备学习资源，大家可以在下年这篇文章中找到获取上述资源的办法！无套路！！！完全免费！！！Java工程师必备学习资源免费获取​shimo.im我的公众号:JavaGuide。公众号主要分享Java常见知识点总结、Java面试重点问题以及大厂Java后端真实面经。公众号作者的开源项目—JavaGuide目前已经29k+Star。欢迎各位关注发布于09:49