📚 技术面试必备基础知识、Leetcode、计算机操作系统、计算机网络、系统设计
Go to file
2018-02-21 21:04:17 +08:00
notes add some source code 2018-02-21 20:55:46 +08:00
pics auto commit 2018-02-20 10:53:11 +08:00
README.md auto commit 2018-02-21 21:04:17 +08:00

数据结构与算法

算法

整理自《算法 第四版》

Leetcode 题解

对题目做了一个分类,并对每种题型的解题思想做了总结。

已经整理了 300+ 的题目,基本涵盖所有经典题目,持续整理中。

剑指 offer 题解

目录按《剑指 Offer 第二版》编排,在牛客网的在线编程中出现的题目都已经 AC。

很多题目都在 Leetcode 中出现过,所以一些解题思路就不在这里重复写了。想要看解题思路的话,可以看《剑指 Offer》原书或者先看 Leetcode 题解,看完 Leetcode 题解再看剑指 Offer 会觉得很容易。

网络

计算机网络

整理自《计算机网络 第七版》,重点内容会在标题之后加 *。

HTTP

整理自《图解 HTTP》

操作系统

计算机操作系统

整理自《现代操作系统》

Linux

整理自《鸟哥的 Linux 私房菜》

面向对象

设计模式

整理自《Head First 设计模式》,这本书内容废话太多,笔记内容提取了重点部分。

面向对象思想

一些面向对象思想和原则

数据库

SQL 语法

整理自《SQL 必知必会》,原书内容不多,笔记内容会更简洁。

MySQL

整理自《高性能 MySQL》重点整理。

Java

JVM

整理自《深入理解 Java 虚拟机》,包括内存模型、垃圾回收和类加载机制。

Java 集合

集合的总结,包含集合源码的分析。

Java IO

File、InputStream 和 OutputStream、Reader 和 Writer、Serializable、Socket 以及 NIO

资料下载

百度网盘

一些 PDF 书籍

后记

原文发表在 牛客网:计算机基础重点整理

牛客网上有很多优质面经,面经往往会给出一些面试需要准备的知识列表,但是这些知识列表都很零散,不适合系统地进行学习。为此,楼主选取了一些计算机经典书籍和材料,整理了一份面向面试的知识整理,希望对大家有所帮助。

笔记开源在 Github 上包括数据结构与算法、网络、操作系统、面向对象。数据结构与算法的笔记之前也在牛客网发布过了包括了算法、Leetcode 题解、剑指 Offer 题解。网络部分除了整理本科学过的计算机网络之外,还特别整理了 HTTP 的内容。操作系统也是,除了整理计算机操作系统课程的内容之外,也特别整理了 Linux 的内容。至于面向对象,重点部分是设计模式笔记,还有就是一些面向对象思想。之后会继续整理其它方面的笔记,例如 Java、数据库、系统设计等可能也会整理一些编码实践相关的笔记例如重构、代码风格。

仓库提供一些 PDF 资源的下载,除了一两本不是很清楚,其它都是高清的。

楼主作为一个轻度强迫症患者,笔记内容会尽量保证排版美观,可读性好。有时候为了加个好看的图,会使用一些画图软件自己画,可见楼主的强迫症多严重,不过应该算还好。为了让笔记内容更整洁,前前后后做了很多次修改,也写了一个为中英混排文档进行排版的脚本,来提高笔记的可读性。

为了上传笔记到 Github 上,也花了一点时间。楼主使用的笔记软件是为知笔记,怎么把笔记内容提取成文本文档,并且提取笔记中的图片就是一个问题。还有就是 Github 使用的是 GFM 来渲染 md 文档,和普通的 Markdown 不太一样,例如 GFM 不支持 MathJax 公式,也不支持 TOC 标记,为此需要替换 MathJax 公式为 codecogs 的云服务和重新生成 TOC 目录。楼主实现了脚本解决了上述的问题,并且整个过程可以一键进行,包括 git 同步到仓库中,因此把为知笔记的内容同步到仓库中的速度非常快。

大部分笔记都是楼主一个字一个字打上去的,少数有摘抄其它文章的内容,这些文章都可以在参考链接中找到。笔记内容可随意使用,转载请注明出处,毕竟写了这么久没那么轻松~

想要支持楼主的话,在 Github 仓库点个 Star 即可。