Merge pull request #1 from CyC2018/master

Update CS-Notes
This commit is contained in:
Elegant-Smile 2019-06-22 07:18:13 +08:00 committed by GitHub
commit 93e1b35bd8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
190 changed files with 1546 additions and 1081 deletions

1
.gitattributes vendored Normal file
View File

@ -0,0 +1 @@
*.md linguist-language=java

View File

@ -1,22 +1,23 @@
<div align="center">
<a href="https://github.com/CyC2018/CS-Notes/blob/master/other/download.md">离线阅读版本下载</a>
<a href="https://gitstar-ranking.com/repositories"> <img src="https://badgen.net/badge/Rank/22?icon=github&color=4ab8a1"></a>
<a href="assets/download.md"> <img src="https://badgen.net/badge/OvO/%E7%A6%BB%E7%BA%BF%E4%B8%8B%E8%BD%BD?icon=telegram&color=4ab8a1"></a>
<a href="https://cyc2018.github.io/CS-Notes"> <img src="https://badgen.net/badge/CyC/%E5%9C%A8%E7%BA%BF%E9%98%85%E8%AF%BB?icon=sourcegraph&color=4ab8a1"></a>
<a href="#微信公众号"> <img src="https://badgen.net/badge/%e5%85%ac%e4%bc%97%e5%8f%b7/CyC2018?icon=rss&color=4ab8a1"></a>
</div>
<br>
| &nbsp;算法&nbsp; | 操作系统 | &nbsp;网络&nbsp; | 面向对象 | &nbsp;&nbsp;数据库&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;Java&nbsp;&nbsp;&nbsp; | 系统设计 | &nbsp;&nbsp;&nbsp;工具&nbsp;&nbsp;&nbsp; | 编码实践 | &nbsp;&nbsp;&nbsp;后记&nbsp;&nbsp;&nbsp; |
| :------------------------: | :------------------------------: | :--------------------: | :--------------------: | :----------------------------------: | :--------------------------------------: | :----------------------: | :--------------------------------------: | :----------------------------------: | :--------------------------------------: |
| [:pencil2:](#pencil2-算法) | [:computer:](#computer-操作系统) | [:cloud:](#cloud-网络) | [:art:](#art-面向对象) | [:floppy_disk:](#floppy_disk-数据库) | [:coffee:](#coffee-java) | [:bulb:](#bulb-系统设计) | [:wrench:](#wrench-工具) | [:watermelon:](#watermelon-编码实践) | [:memo:](#memo-后记) |
| &nbsp;算法&nbsp; | 操作系统 | &nbsp;网络&nbsp;|面向对象| &nbsp;&nbsp;数据库&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;Java&nbsp;&nbsp;&nbsp;| 系统设计| &nbsp;&nbsp;&nbsp;工具&nbsp;&nbsp;&nbsp; |编码实践| &nbsp;&nbsp;&nbsp;后记&nbsp;&nbsp;&nbsp; |
| :---: | :----: | :---: | :----: | :----: | :----: | :----: | :----: | :----: | :----: |
| [:pencil2:](#pencil2-算法) | [:computer:](#computer-操作系统) | [:cloud:](#cloud-网络) | [:art:](#art-面向对象) | [:floppy_disk:](#floppy_disk-数据库) |[:coffee:](#coffee-java)| [:bulb:](#bulb-系统设计) |[:wrench:](#wrench-工具)| [:watermelon:](#watermelon-编码实践) |[:memo:](#memo-后记)|
<br>
<div align="center">
<img src="assets/LogoMakr_0zpEzN.png" width="200px">
<br>
<a href="https://cyc2018.github.io/CS-Notes"> <img src="https://img.shields.io/badge/>-read-4ab8a1.svg"></a> <a href="https://xiaozhuanlan.com/CyC2018"> <img src="https://img.shields.io/badge/_-more-4ab8a1.svg"></a>
<br> <br>
</div>
<br>
## :pencil2: 算法
- [剑指 Offer 题解](https://github.com/CyC2018/CS-Notes/blob/master/notes/剑指%20Offer%20题解%20-%20目录.md)
@ -76,41 +77,30 @@
- [代码可读性](https://github.com/CyC2018/CS-Notes/blob/master/notes/代码可读性.md)
- [代码风格规范](https://github.com/CyC2018/CS-Notes/blob/master/notes/代码风格规范.md)
## :memo: 后记
## :memo: 后记
### 公众号
### 微信公众号
更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复 "下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img>
<div align="center"><img width="500px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报4.png"></img></div>
### QQ
### 更多内容
为大家提供一个学习交流平台在这里你可以自由地讨论技术问题
- 内推[Job-Recommend](https://github.com/CyC2018/Job-Recommend)
- 简历模版[Markdown-Resume](https://github.com/CyC2018/Markdown-Resume)
- 面经[2018 这一年](https://www.nowcoder.com/discuss/137593)
- 简历https://cyc2018.github.io
- 知乎[CyC2018](https://www.zhihu.com/people/xiao-shi-guang-33/activities)
- 小专栏[后端面试进阶指南](https://xiaozhuanlan.com/CyC2018)
- QQ 交流群[857210598](assets/group.png)
<img src="assets/group.png" width="180px">
### 工具
### 后端面试进阶指南
<a href="https://xiaozhuanlan.com/CyC2018">
<img src="assets/%E5%B0%8F%E4%B8%93%E6%A0%8F.jpg" width="80px"></a>
### 内推信息
[Job-Recommend](https://github.com/CyC2018/Job-Recommend)
### 绘图工具
[draw.io](https://www.draw.io/)
### Github Page
[docsify](https://docsify.js.org/#/)
### Logo
Power by [logomakr](https://logomakr.com/).
- Github Pages[docsify](https://docsify.js.org/#/)
- 云笔记[为知笔记](http://www.wiz.cn/)
- 绘图[draw.io](https://www.draw.io/)
- Logo[logomakr](https://logomakr.com/)
### 排版
@ -130,7 +120,7 @@ GFM 转换工具:[GFM-Converter](https://github.com/CyC2018/GFM-Converter)。
本仓库内容 **不是** 将网上的资料随意拼凑而来除了少部分引用书上和技术文档的原文其余都是我的原创在您引用本仓库内容或者对内容进行修改演绎时请署名并以相同方式共享谢谢
转载文章请在开头明显处标明该页面地址如果是公众号转载也请在合适的位置贴上 [CyC2018 公众号二维码海报](https://github.com/CyC2018/CS-Notes/blob/master/assets/%E5%85%AC%E4%BC%97%E5%8F%B7%20%E6%B5%B7%E6%8A%A5.png)
转载文章请在开头明显处标明该页面地址公众号等其它转载请联系 zhengyc101@163.com
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png" /></a>
@ -139,38 +129,38 @@ GFM 转换工具:[GFM-Converter](https://github.com/CyC2018/GFM-Converter)。
感谢以下人员对本仓库做出的贡献当然不仅仅只有这些贡献者这里就不一一列举了如果你希望被添加到这个名单中并且提交过 Issue 或者 PR请与我联系
<a href="https://github.com/linw7">
<img src="https://avatars3.githubusercontent.com/u/21679154?s=400&v=4" width="50px">
<img src="https://avatars3.githubusercontent.com/u/21679154?s=400&v=4" width="50px">
</a>
<a href="https://github.com/g10guang">
<img src="https://avatars1.githubusercontent.com/u/18458140?s=400&v=4" width="50px">
<img src="https://avatars1.githubusercontent.com/u/18458140?s=400&v=4" width="50px">
</a>
<a href="https://github.com/Sctwang">
<img src="https://avatars3.githubusercontent.com/u/33345444?s=400&v=4" width="50px">
<img src="https://avatars3.githubusercontent.com/u/33345444?s=400&v=4" width="50px">
</a>
<a href="https://github.com/ResolveWang">
<img src="https://avatars1.githubusercontent.com/u/8018776?s=400&v=4" width="50px">
<img src="https://avatars1.githubusercontent.com/u/8018776?s=400&v=4" width="50px">
</a>
<a href="https://github.com/crossoverJie">
<img src="https://avatars1.githubusercontent.com/u/15684156?s=400&v=4" width="50px">
<img src="https://avatars1.githubusercontent.com/u/15684156?s=400&v=4" width="50px">
</a>
<a href="https://github.com/jy03078584">
<img src="https://avatars2.githubusercontent.com/u/7719370?s=400&v=4" width="50px">
<img src="https://avatars2.githubusercontent.com/u/7719370?s=400&v=4" width="50px">
</a>
<a href="https://github.com/kwongtailau">
<img src="https://avatars0.githubusercontent.com/u/22954582?s=400&v=4" width="50px">
<img src="https://avatars0.githubusercontent.com/u/22954582?s=400&v=4" width="50px">
</a>
<a href="https://github.com/xiangflight">
<img src="https://avatars2.githubusercontent.com/u/10072416?s=400&v=4" width="50px">
<img src="https://avatars2.githubusercontent.com/u/10072416?s=400&v=4" width="50px">
</a>
<a href="https://github.com/mafulong">
<img src="https://avatars1.githubusercontent.com/u/24795000?s=400&v=4" width="50px">
<img src="https://avatars1.githubusercontent.com/u/24795000?s=400&v=4" width="50px">
</a>
<a href="https://github.com/yanglbme">
<img src="https://avatars1.githubusercontent.com/u/21008209?s=400&v=4" width="50px">
<img src="https://avatars1.githubusercontent.com/u/21008209?s=400&v=4" width="50px">
</a>
<a href="https://github.com/OOCZC">
<img src="https://avatars1.githubusercontent.com/u/11623828?s=400&v=4" width="50px">
<img src="https://avatars1.githubusercontent.com/u/11623828?s=400&v=4" width="50px">
</a>
<a href="https://github.com/5renyuebing">
<img src="https://avatars1.githubusercontent.com/u/32872430?s=400&v=4" width="50px">
</a>
<img src="https://avatars1.githubusercontent.com/u/32872430?s=400&v=4" width="50px">
</a>

View File

Before

Width:  |  Height:  |  Size: 220 KiB

After

Width:  |  Height:  |  Size: 220 KiB

View File

Before

Width:  |  Height:  |  Size: 271 KiB

After

Width:  |  Height:  |  Size: 271 KiB

View File

Before

Width:  |  Height:  |  Size: 220 KiB

After

Width:  |  Height:  |  Size: 220 KiB

View File

@ -28,6 +28,7 @@
# 如何下载
离线版本由公众号 **CyC2018** 发布最新版本也会在上面及时发布在公众号后台回复 **下载** 即可获取下载链接
离线版本由公众号 **CyC2018** 发布最新版本也会在上面及时发布在公众号后台回复 **离线下载** 即可获取下载链接
<div align="center"><img width="460px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报4.png"></img></div>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 506 KiB

View File

@ -1,6 +1,5 @@
<img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/LogoMakr_1J56bI.png">
<img width="220px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/LogoMakr_0zpEzN.png">
# CS-Notes
- 本项目包含了技术面试必备的基础知识内容浅显易懂你不需要花很长的时间去阅读和理解成堆的技术书籍就可以快速掌握这些知识从而节省宝贵的面试复习时间

View File

@ -9,8 +9,10 @@
<meta name="viewport" content="width=device-width, user-scalable=yes, initial-scale=1.0, maximum-scale=2.0, minimum-scale=1.0">
<link rel="icon" href=" https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/LogoMakr_1J56bI.png">
<link rel="stylesheet" href="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/vue.css">
<!-- 将自定义样式放在 Github 上会导致加载速度变得非常慢,所以采取直接内嵌的方式 -->
<style type="text/css">
/* 隐藏头部的目录 */
#main>ul:nth-child(1) {
display: none;
@ -34,7 +36,7 @@
img,
pre {
border-radius: 8px;
border-radius: 5px;
}
.content,
@ -60,6 +62,15 @@
/*font-family: Microsoft YaHei, Source Sans Pro, Helvetica Neue, Arial, sans-serif !important;*/
}
.markdown-section pre>code {
font-size: 13px;
}
code,
pre {
background-color: #fff !important;
}
.markdown-section>p {
font-size: 16px !important;
}
@ -68,9 +79,18 @@
font-family: Consolas, Roboto Mono, Monaco, courier, monospace !important;
}
p, h1, h2, h3, h4, ol, ul {
letter-spacing: 2px !important;
}
p, ol, ul {
line-height: 30px !important;
}
@media (min-width:600px) {
.markdown-section pre>code {
font-size: .9rem !important;
letter-spacing: 1.1px !important;
}
}
@ -78,6 +98,7 @@
.markdown-section pre>code {
padding-top: 5px;
padding-bottom: 5px;
padding-left: 15px !important;
}
pre:after {
@ -100,7 +121,7 @@
.markdown-section > div > img,
.markdown-section pre {
box-shadow: 2px 2px 20px 6px #ddd !important;
box-shadow: 0px 0px 20px 11px #eaeaea;
}
pre {
@ -117,10 +138,14 @@
@media (max-width:600px) {
pre {
padding-left: 0px !important;
padding-right: 0px !important;
padding-left: 3px !important;
padding-right: 3px !important;
margin-left: -20px !important;
margin-right: -20px !important;
box-shadow: 0px 0px 20px 0px #eee !important;
}
.docsify-copy-code-button {
display: none;
}
@ -247,8 +272,8 @@
/*深蓝加粗*/
.token.keyword {
color: #124363;
font-weight: bold;
color: #333;
font-weight: 700;
}

View File

@ -91,5 +91,10 @@ Docker 轻量级的特点使得它很适合用于部署、维护、组合微服
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -24,7 +24,7 @@ Git 属于分布式版本控制系统,而 SVN 属于集中式。
集中式版本控制有安全性问题当中心服务器挂了所有人都没办法工作了
集中式版本控制需要连网才能工作如果网速过慢那么提交一个文件会慢的无法让人忍受而分布式版本控制不需要连网就能工作
集中式版本控制需要连网才能工作如果网速过慢那么提交一个文件会慢的无法让人忍受而分布式版本控制不需要连网就能工作
分布式版本控制新建分支合并分支操作速度非常快而集中式版本控制新建一个分支相当于复制一份完整代码
@ -38,7 +38,7 @@ Github 就是一个中心服务器。
新建一个仓库之后当前目录就成为了工作区工作区下有一个隐藏目录 .git它属于 Git 的版本库
Git 的版本库有一个称为 Stage 的暂存区以及最后的 History 版本库History 中存有所有分支使用一个 HEAD 指针指向当前分支
Git 的版本库有一个称为 Stage 的暂存区以及最后的 History 版本库History 存储所有分支信息使用一个 HEAD 指针指向当前分支
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/71b97a50-a49f-4f1a-81d1-48c3364d61b3.png" width="700px"> </div><br>
@ -62,7 +62,7 @@ Git 的版本库有一个称为 Stage 的暂存区以及最后的 History 版本
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/ec4d7464-7140-46d8-827e-d63634202e1e.png" width="220px"> </div><br>
新建分支是新建一个指针指向时间线的最后一个节点并让 HEAD 指针指向新分支表示新分支成为当前分支
新建分支是新建一个指针指向时间线的最后一个节点并让 HEAD 指针指向新分支表示新分支成为当前分支
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/66d00642-ce37-466c-8f7a-143d0bf84cd6.png" width="220px"> </div><br>
@ -114,7 +114,7 @@ master 分支应该是非常稳定的,只用来发布新版本;
在一个分支上操作之后如果还没有将修改提交到分支上此时进行切换分支那么另一个分支上也能看到新的修改这是因为所有分支都共用一个工作区的缘故
可以使用 git stash 将当前分支的修改储藏起来此时当前工作区的所有修改都会被存到栈也就是说当前工作区是干净的没有任何未提交的修改此时就可以安全的切换到其它分支上了
可以使用 git stash 将当前分支的修改储藏起来此时当前工作区的所有修改都会被存到栈也就是说当前工作区是干净的没有任何未提交的修改此时就可以安全的切换到其它分支上了
```
$ git stash
@ -162,5 +162,10 @@ $ ssh-keygen -t rsa -C "youremail@example.com"
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -881,5 +881,10 @@ DELETE /idX/delete HTTP/1.1 -> Returns 404
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -622,5 +622,10 @@ NIO 与普通 I/O 的区别主要有以下两点:
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -897,7 +897,7 @@ hashCode() 返回散列值,而 equals() 是用来判断两个对象是否等
在覆盖 equals() 方法时应当总是覆盖 hashCode() 方法保证等价的两个对象散列值也相等
下面的代码中新建了两个等价的对象并将它们添加到 HashSet 我们希望将这两个对象当成一样的只在集合中添加一个对象但是因为 EqualExample 没有实现 hasCode() 方法因此这两个对象的散列值是不同的最终导致集合添加了两个等价的对象
下面的代码中新建了两个等价的对象并将它们添加到 HashSet 我们希望将这两个对象当成一样的只在集合中添加一个对象但是因为 EqualExample 没有实现 hashCode() 方法因此这两个对象的散列值是不同的最终导致集合添加了两个等价的对象
```java
EqualExample e1 = new EqualExample(1, 1, 1);
@ -1435,5 +1435,10 @@ Java 注解是附加在代码中的一些元信息,用于一些工具在编译
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -1113,5 +1113,10 @@ public final class ConcurrentCache<K, V> {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -1638,5 +1638,10 @@ JDK 1.6 引入了偏向锁和轻量级锁,从而让锁拥有了四个状态:
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -760,5 +760,10 @@ public class FileSystemClassLoader extends ClassLoader {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -293,5 +293,10 @@ private int binarySearch(int[] nums, int target) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -420,5 +420,10 @@ public int[] countBits(int num) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -108,5 +108,10 @@ private List<TreeNode> generateSubtrees(int s, int e) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -201,8 +201,6 @@ public int minPathSum(int[][] grid) {
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/dc82f0f3-c1d4-4ac8-90ac-d5b32a9bd75a.jpg" width=""> </div><br>
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/dc82f0f3-c1d4-4ac8-90ac-d5b32a9bd75a.jpg"/> </div><br>
```java
public int uniquePaths(int m, int n) {
int[] dp = new int[n];
@ -1246,5 +1244,10 @@ public int minSteps(int n) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -242,5 +242,10 @@ private boolean isSubstr(String s, String target) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -125,5 +125,10 @@ private int maxCount(Map<Integer, Integer> countForNum) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -259,5 +259,10 @@ private class UF {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -227,5 +227,10 @@ public int countBinarySubstrings(String s) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -232,5 +232,10 @@ private void swap(int[] nums, int i, int j) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -1271,5 +1271,10 @@ private void backtracking(int row) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -509,5 +509,10 @@ public int maximumProduct(int[] nums) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -435,5 +435,10 @@ public int maxChunksToSorted(int[] arr) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -222,5 +222,10 @@ public int[] nextGreaterElements(int[] nums) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -1122,5 +1122,10 @@ class MapSum {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -37,5 +37,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -37,5 +37,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -2,14 +2,14 @@
* [1. 分配饼干](#1-分配饼干)
* [2. 不重叠的区间个数](#2-不重叠的区间个数)
* [3. 投飞镖刺破气球](#3-投飞镖刺破气球)
* [3. 根据身高和序号重组队列](#3-根据身高和序号重组队列)
* [4. 买卖股票最大的收益](#4-买卖股票最大的收益)
* [5. 买卖股票的最大收益 II](#5-买卖股票的最大收益-ii)
* [6. 种植花朵](#6-种植花朵)
* [7. 判断是否为子序列](#7-判断是否为子序列)
* [8. 修改一个数成为非递减数组](#8-修改一个数成为非递减数组)
* [9. 子数组最大的和](#9-子数组最大的和)
* [10. 分隔字符串使同种字符出现在一起](#10-分隔字符串使同种字符出现在一起)
* [4. 根据身高和序号重组队列](#4-根据身高和序号重组队列)
* [5. 买卖股票最大的收益](#5-买卖股票最大的收益)
* [6. 买卖股票的最大收益 II](#6-买卖股票的最大收益-ii)
* [7. 种植花朵](#7-种植花朵)
* [8. 判断是否为子序列](#8-判断是否为子序列)
* [9. 修改一个数成为非递减数组](#9-修改一个数成为非递减数组)
* [10. 子数组最大的和](#10-子数组最大的和)
* [11. 分隔字符串使同种字符出现在一起](#11-分隔字符串使同种字符出现在一起)
<!-- GFM-TOC -->
@ -78,18 +78,18 @@ Explanation: You don't need to remove any of the intervals since they're already
按区间的结尾进行排序每次选择结尾最小并且和前一个区间不重叠的区间
```java
public int eraseOverlapIntervals(Interval[] intervals) {
public int eraseOverlapIntervals(int[][] intervals) {
if (intervals.length == 0) {
return 0;
}
Arrays.sort(intervals, Comparator.comparingInt(o -> o.end));
Arrays.sort(intervals, Comparator.comparingInt(o -> o[1]));
int cnt = 1;
int end = intervals[0].end;
int end = intervals[0][1];
for (int i = 1; i < intervals.length; i++) {
if (intervals[i].start < end) {
if (intervals[i][0] < end) {
continue;
}
end = intervals[i].end;
end = intervals[i][1];
cnt++;
}
return intervals.length - cnt;
@ -99,10 +99,10 @@ public int eraseOverlapIntervals(Interval[] intervals) {
使用 lambda 表示式创建 Comparator 会导致算法运行时间过长如果注重运行时间可以修改为普通创建 Comparator 语句
```java
Arrays.sort(intervals, new Comparator<Interval>() {
Arrays.sort(intervals, new Comparator<int[]>() {
@Override
public int compare(Interval o1, Interval o2) {
return o1.end - o2.end;
public int compare(int[] o1, int[] o2) {
return o1[1] - o2[1];
}
});
```
@ -141,7 +141,7 @@ public int findMinArrowShots(int[][] points) {
}
```
# 3. 根据身高和序号重组队列
# 4. 根据身高和序号重组队列
[406. Queue Reconstruction by Height(Medium)](https://leetcode.com/problems/queue-reconstruction-by-height/description/)
@ -173,7 +173,7 @@ public int[][] reconstructQueue(int[][] people) {
}
```
# 4. 买卖股票最大的收益
# 5. 买卖股票最大的收益
[121. Best Time to Buy and Sell Stock (Easy)](https://leetcode.com/problems/best-time-to-buy-and-sell-stock/description/)
@ -196,7 +196,7 @@ public int maxProfit(int[] prices) {
```
# 5. 买卖股票的最大收益 II
# 6. 买卖股票的最大收益 II
[122. Best Time to Buy and Sell Stock II (Easy)](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-ii/description/)
@ -217,7 +217,7 @@ public int maxProfit(int[] prices) {
```
# 6. 种植花朵
# 7. 种植花朵
[605. Can Place Flowers (Easy)](https://leetcode.com/problems/can-place-flowers/description/)
@ -247,7 +247,7 @@ public boolean canPlaceFlowers(int[] flowerbed, int n) {
}
```
# 7. 判断是否为子序列
# 8. 判断是否为子序列
[392. Is Subsequence (Medium)](https://leetcode.com/problems/is-subsequence/description/)
@ -269,7 +269,7 @@ public boolean isSubsequence(String s, String t) {
}
```
# 8. 修改一个数成为非递减数组
# 9. 修改一个数成为非递减数组
[665. Non-decreasing Array (Easy)](https://leetcode.com/problems/non-decreasing-array/description/)
@ -303,7 +303,7 @@ public boolean checkPossibility(int[] nums) {
# 9. 子数组最大的和
# 10. 子数组最大的和
[53. Maximum Subarray (Easy)](https://leetcode.com/problems/maximum-subarray/description/)
@ -327,7 +327,7 @@ public int maxSubArray(int[] nums) {
}
```
# 10. 分隔字符串使同种字符出现在一起
# 11. 分隔字符串使同种字符出现在一起
[763. Partition Labels (Medium)](https://leetcode.com/problems/partition-labels/description/)
@ -370,5 +370,10 @@ private int char2Index(char c) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -345,5 +345,10 @@ public ListNode oddEvenList(ListNode head) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -7,5 +7,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -48,6 +48,8 @@ https://leetcode.com/problems/big-countries/description/
## SQL Schema
SQL Schema 用于在本地环境下创建表结构并导入数据从而方便在本地环境解答
```sql
DROP TABLE
IF
@ -125,6 +127,8 @@ VALUES
'm' ^ 'm' ^ 'f' = 'f'
```
```sql
UPDATE salary
SET sex = CHAR ( ASCII(sex) ^ ASCII( 'm' ) ^ ASCII( 'f' ) );
@ -301,6 +305,8 @@ VALUES
## Solution
Email 进行分组如果相同 Email 的数量大于等于 2则表示该 Email 重复
```sql
SELECT
Email
@ -324,9 +330,9 @@ https://leetcode.com/problems/delete-duplicate-emails/description/
+----+---------+
| Id | Email |
+----+---------+
| 1 | a@b.com |
| 2 | c@d.com |
| 3 | a@b.com |
| 1 | john@example.com |
| 2 | bob@example.com |
| 3 | john@example.com |
+----+---------+
```
@ -347,6 +353,8 @@ https://leetcode.com/problems/delete-duplicate-emails/description/
## Solution
只保留相同 Email Id 最小的那一个然后删除其它的
连接
```sql
@ -437,7 +445,7 @@ VALUES
## Solution
使用左外连接
涉及到 Person Address 两个表在对这两个表执行连接操作时因为要保留 Person 表中的信息使 Address 表中没有关联的信息也要保留此时可以用左外连接 Person 表放在 LEFT JOIN 的左边
```sql
SELECT
@ -797,10 +805,43 @@ VALUES
## Solution
要统计某个 score 的排名只要统计大于该 score score 数量然后加 1
| score | 大于该 score score 数量 | 排名 |
| :---: | :---: | :---: |
| 4.1 | 2 | 3 |
| 4.2 | 1 | 2 |
| 4.3 | 0 | 1 |
但是在本题中相同的 score 只算一个排名
| score | 排名 |
| :---: | :---: |
| 4.1 | 3 |
| 4.1 | 3 |
| 4.2 | 2 |
| 4.2 | 2 |
| 4.3 | 1 |
| 4.3 | 1 |
可以按 score 进行分组将同一个分组中的 score 只当成一个
但是如果分组字段只有 score 的话那么相同的 score 最后的结果只会有一个例如上面的 6 个记录最后只取出 3
| score | 排名 |
| :---: | :---: |
| 4.1 | 3 |
| 4.2 | 2 |
| 4.3 | 1 |
所以在分组中需要加入 Id每个记录显示一个结果综上需要使用 score id 两个分组字段
在下面的实现中首先将 Scores 表根据 score 字段进行自连接得到一个新表然后在新表上对 id score 进行分组
```sql
SELECT
S1.score,
COUNT( DISTINCT S2.score ) Rank
S1.score 'Score',
COUNT( DISTINCT S2.score ) 'Rank'
FROM
Scores S1
INNER JOIN Scores S2
@ -931,6 +972,8 @@ VALUES
使用多个 union
```sql
# 处理偶数 id id 1
# 例如 2,4,6,... 变成 1,3,5,...
SELECT
s1.id - 1 AS id,
s1.student
@ -938,6 +981,8 @@ FROM
seat s1
WHERE
s1.id MOD 2 = 0 UNION
# 处理奇数 id id 1但是如果最大的 id 为奇数则不做处理
# 例如 1,3,5,... 变成 2,4,6,...
SELECT
s2.id + 1 AS id,
s2.student
@ -946,6 +991,7 @@ FROM
WHERE
s2.id MOD 2 = 1
AND s2.id != ( SELECT max( s3.id ) FROM seat s3 ) UNION
# 如果最大的 id 为奇数单独取出这个数
SELECT
s4.id AS id,
s4.student
@ -961,5 +1007,10 @@ ORDER BY
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -31,7 +31,7 @@
* [文件属性](#文件属性)
* [文件与目录的基本操作](#文件与目录的基本操作)
* [修改权限](#修改权限)
* [文件默认权限](#文件默认权限)
* [默认权限](#默认权限)
* [目录的权限](#目录的权限)
* [链接](#链接)
* [获取文件内容](#获取文件内容)
@ -137,10 +137,8 @@ sudo 允许一般用户使用 root 可执行的命令,不过只有在 /etc/sud
RPM DPKG 为最常见的两类软件包管理工具
- RPM 全称为 Redhat Package Manager最早由 Red Hat 公司制定实施随后被 GNU 开源操作系统接受并成为很多 Linux 系统 (RHEL) 的既定软件标准
- RPM 竞争的是基于 Debian 操作系统 (Ubuntu) DEB 软件包管理工具 DPKG全称为 Debian Package功能方面与 RPM 相似
YUM 基于 RPM具有依赖管理和软件升级功能
- RPM 全称为 Redhat Package Manager最早由 Red Hat 公司制定实施随后被 GNU 开源操作系统接受并成为许多 Linux 系统的既定软件标准YUM 基于 RPM具有依赖管理和软件升级功能
- RPM 竞争的是基于 Debian 操作系统的 DEB 软件包管理工具 DPKG全称为 Debian Package功能方面与 RPM 相似
## 发行版
@ -157,7 +155,7 @@ Linux 发行版是 Linux 内核及各种应用软件的集成版本。
- 编辑模式Insert mode按下 "i" 等按键之后进入可以对文本进行编辑
- 指令列模式Bottom-line mode按下 ":" 按键之后进入用于保存退出等操作
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/5942debd-fc00-477a-b390-7c5692cc8070.jpg" width="400"/> </div><br>
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/b5e9fa4d-78d3-4176-8273-756d970742c7.png" width="500"/> </div><br>
在指令列模式下有以下命令用于离开或者保存文件
@ -172,7 +170,7 @@ Linux 发行版是 Linux 内核及各种应用软件的集成版本。
## GNU
GNU 计划译为革奴计划它的目标是创建一套完全自由的操作系统称为 GNU其内容软件完全以 GPL 方式发布其中 GPL 全称为 GNU 通用公共许可协议包含了以下内容
GNU 计划译为革奴计划它的目标是创建一套完全自由的操作系统称为 GNU其内容软件完全以 GPL 方式发布其中 GPL 全称为 GNU 通用公共许可协议GNU General Public License包含了以下内容
- 以任何目的运行此程序的自由
- 再复制的自由
@ -195,13 +193,13 @@ IDEATA全称 Advanced Technology Attachment接口速度最大为 133MB/
### 2. SATA
SATA 全称 Serial ATA也就是使用串口的 ATA 接口抗干扰性强且对数据线的长度要求比 ATA 低很多支持热插拔等功能SATA-II 的接口速度为 300MiB/s新的 SATA-III 标准可达到 600MiB/s 的传输速度SATA 的数据线也比 ATA 的细得多有利于机箱内的空气流通整理线材也比较方便
SATA 全称 Serial ATA也就是使用串口的 ATA 接口抗干扰性强且对数据线的长度要求比 ATA 低很多支持热插拔等功能SATA-II 的接口速度为 300MiB/s SATA-III 标准可达到 600MiB/s 的传输速度SATA 的数据线也比 ATA 的细得多有利于机箱内的空气流通整理线材也比较方便
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/f9f2a16b-4843-44d1-9759-c745772e9bcf.jpg" width=""/> </div><br>
### 3. SCSI
SCSI 全称是 Small Computer System Interface小型机系统接口经历多代的发展从早期的 SCSI-II 到目前的 Ultra320 SCSI 以及 Fiber-Channel光纤通道接口型式也多种多样SCSI 硬盘广为工作站以及个人电脑以及服务器所使用因此会使用较为先进的技术如碟片转速 15000rpm 的高转速且传输时 CPU 占用率较低但是单价也比相同容量的 ATA SATA 硬盘更加昂贵
SCSI 全称是 Small Computer System Interface小型机系统接口SCSI 硬盘广为工作站以及个人电脑以及服务器所使用因此会使用较为先进的技术如碟片转速 15000rpm 的高转速且传输时 CPU 占用率较低但是单价也比相同容量的 ATA SATA 硬盘更加昂贵
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/f0574025-c514-49f5-a591-6d6a71f271f7.jpg" width=""/> </div><br>
@ -236,7 +234,7 @@ Linux 也把分区当成文件,分区文件的命名方式为:磁盘文件
### 2. GPT
不同的磁盘有不同的扇区大小例如 512 bytes 和最新磁盘的 4 kGPT 为了兼容所有磁盘在定义扇区上使用逻辑区块地址Logical Block Address, LBALBA 默认大小为 512 bytes
扇区是磁盘的最小存储单位旧磁盘的扇区大小通常为 512 bytes而最新的磁盘支持 4 kGPT 为了兼容所有磁盘在定义扇区上使用逻辑区块地址Logical Block Address, LBALBA 默认大小为 512 bytes
GPT 1 个区块记录了主要开机记录MBR紧接着是 33 个区块记录分区信息并把最后的 33 个区块用于对分区信息进行备份 33 个区块第一个为 GPT 表头纪录这个部份纪录了分区表本身的位置与大小和备份分区的位置同时放置了分区表的校验码 (CRC32)操作系统可以根据这个校验码来判断 GPT 是否正确若有错误可以使用备份分区进行恢复
@ -284,19 +282,19 @@ BIOS 不可以读取 GPT 分区表,而 UEFI 可以。
除此之外还包括
- superblock记录文件系统的整体信息包括 inode block 的总量使用量剩余量以及文件系统的格式与相关信息等
- block bitmap记录 block 是否被使用的位
- block bitmap记录 block 是否被使用的位
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/BSD_disk.png" width="800"/> </div><br>
## 文件读取
对于 Ext2 文件系统当要读取一个文件的内容时先在 inode 查找文件内容所在的所有 block然后把所有 block 的内容读出来
对于 Ext2 文件系统当要读取一个文件的内容时先在 inode 查找文件内容所在的所有 block然后把所有 block 的内容读出来
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/2f683fe8-bee8-46a9-86a7-685c8981555856191616.png"/> </div><br>
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/12a65cc6-20e0-4706-9fe6-3ba49413d7f6.png" width="500px"> </div><br>
而对于 FAT 文件系统它没有 inode每个 block 中存储着下一个 block 的编号
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/f3131e98-8d20-4ff9-b14b-d6803691555844133783.png"/> </div><br>
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/5b718e86-7102-4bb6-8ca5-d1dd791530c5.png" width="500px"> </div><br>
## 磁盘碎片
@ -321,8 +319,8 @@ inode 具体包含以下信息:
- 拥有者与群组 (owner/group)
- 容量
- 建立或状态改变的时间 (ctime)
- 最近一次的读取时间 (atime)
- 最近修改时间 (mtime)
- 最近读取时间 (atime)
- 最近修改时间 (mtime)
- 定义文件特性的旗标 (flag) SetUID...
- 该文件真正内容的指向 (pointer)
@ -331,7 +329,7 @@ inode 具有以下特点:
- 每个 inode 大小均固定为 128 bytes (新的 ext4 xfs 可设定到 256 bytes)
- 每个文件都仅会占用一个 inode
inode 中记录了文件内容所在的 block 编号但是每个 block 非常小一个大文件随便都需要几十万的 block而一个 inode 大小有限无法直接引用这么多 block 编号因此引入了间接双间接三间接引用间接引用是指 inode 记录的引用 block 块记录引用信息
inode 中记录了文件内容所在的 block 编号但是每个 block 非常小一个大文件随便都需要几十万的 block而一个 inode 大小有限无法直接引用这么多 block 编号因此引入了间接双间接三间接引用间接引用 inode 记录的引用 block 块记录引用信息
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/inode_with_signatures.jpg" width="600"/> </div><br>
@ -339,7 +337,7 @@ inode 中记录了文件内容所在的 block 编号,但是每个 block 非常
建立一个目录时会分配一个 inode 与至少一个 blockblock 记录的内容是目录下所有文件的 inode 编号以及文件名
可以看文件的 inode 本身不记录文件名文件名记录在目录中因此新增文件删除文件更改文件名这些操作与目录的 w 权限有关
可以看文件的 inode 本身不记录文件名文件名记录在目录中因此新增文件删除文件更改文件名这些操作与目录的权限有关
## 日志
@ -446,17 +444,15 @@ rmdir [-p] 目录名称
### 6. cp
复制文件
如果源文件有两个以上则目的文件一定要是目录才行
复制文件如果源文件有两个以上则目的文件一定要是目录才行
```html
cp [-adfilprsu] source destination
-a 相当于 -dr --preserve=all 的意思至于 dr 请参考下列说明
-a 相当于 -dr --preserve=all
-d 若来源文件为链接文件则复制链接文件属性而非文件本身
-i 若目标文件已经存在时在覆盖前会先询问
-p 连同文件的属性一起复制过去
-r 递归持续复制
-r 递归复制
-u destination source 旧才更新 destination destination 不存在的情况下才复制
--preserve=all 除了 -p 的权限相关参数外还加入 SELinux 的属性, links, xattr 等也复制了
```
@ -513,12 +509,12 @@ cp [-adfilprsu] source destination
# chmod a+w .bashrc
```
## 文件默认权限
## 默认权限
- 文件默认权限文件默认没有可执行权限因此为 666也就是 -rw-rw-rw-
- 目录默认权限目录必须要能够进入也就是必须拥有可执行权限因此为 777 也就是 drwxrwxrwx
可以通过 umask 设置或者查看文件的默认权限通常以掩码的形式来表示例如 002 表示其它用户的权限去除了一个 2 的权限也就是写权限因此建立新文件时默认的权限为 -rw-rw-r--
可以通过 umask 设置或者查看默认权限通常以掩码的形式来表示例如 002 表示其它用户的权限去除了一个 2 的权限也就是写权限因此建立新文件时默认的权限为 -rw-rw-r--
## 目录的权限
@ -528,14 +524,15 @@ cp [-adfilprsu] source destination
## 链接
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/1e46fd03-0cda-4d60-9b1c-0c256edaf6b2.png" width="450px"> </div><br>
```html
# ln [-sf] source_filename dist_filename
-s 默认是 hard link -s symbolic link
-s 默认是实体链接 -s 为符号链接
-f 如果目标文件存在时先删除目标文件
```
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/b8081c84-62c4-4019-b3ee-4bd0e443d647.jpg" width="400px"> </div><br>
### 1. 实体链接
在目录下创建一个条目记录着文件名与 inode 编号这个 inode 就是源文件的 inode
@ -557,7 +554,7 @@ cp [-adfilprsu] source destination
当源文件被删除了链接文件就打不开了
可以为目录建立链接
因为记录的是路径所以可以为目录建立符号链接
```html
# ll -i /etc/crontab /root/crontab2
@ -774,7 +771,7 @@ $ tar [-z|-j|-J] [xv] [-f 已有的 tar 文件] [-C 目录] ==解压缩
- 命令历史记录使用过的命令
- 命令与文件补全快捷键tab
- 命名别名例如 lm ls -al 的别名
- 命名别名例如 ll ls -al 的别名
- shell scripts
- 通配符例如 ls -l /usr/bin/X\* 列出 /usr/bin 下面所有以 X 开头的文件
@ -1108,7 +1105,7 @@ dmtsai lines: 5 columns: 9
### 1. ps
查看某个时间点的进程信息
查看某个时间点的进程信息
示例一查看自己的进程
@ -1130,7 +1127,7 @@ dmtsai lines: 5 columns: 9
### 2. pstree
查看进程树
查看进程树
示例查看所有进程树
@ -1140,7 +1137,7 @@ dmtsai lines: 5 columns: 9
### 3. top
实时显示进程信息
实时显示进程信息
示例两秒钟刷新一次
@ -1162,13 +1159,14 @@ dmtsai lines: 5 columns: 9
| 状态 | 说明 |
| :---: | --- |
| R | running or runnable (on run queue) |
| D | uninterruptible sleep (usually I/O) |
| S | interruptible sleep (waiting for an event to complete) |
| Z | zombie (terminated but not reaped by its parent) |
| T | stopped (either by a job control signal or because it is being traced) |
| R | running or runnable (on run queue)<br>正在执行或者可执行此时进程位于执行队列中|
| D | uninterruptible sleep (usually I/O)<br>不可中断阻塞通常为 IO 阻塞 |
| S | interruptible sleep (waiting for an event to complete) <br> 可中断阻塞此时进程正在等待某个事件完成|
| Z | zombie (terminated but not reaped by its parent)<br>僵死进程已经终止但是尚未被其父进程获取信息|
| T | stopped (either by a job control signal or because it is being traced) <br> 结束进程既可以被作业控制信号结束也可能是正在被追踪|
<br>
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/76a49594323247f21c9b3a69945445ee.png" width=""/> </div><br>
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/2bab4127-3e7d-48cc-914e-436be859fb05.png" width="490px"/> </div><br>
## SIGCHLD
@ -1181,7 +1179,7 @@ dmtsai lines: 5 columns: 9
在子进程退出时它的进程描述符不会立即释放这是为了让父进程得到子进程信息父进程通过 wait() waitpid() 来获得一个已经退出的子进程的信息
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/flow.png" width=""/> </div><br>
<div align="center"> <!-- <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/flow.png" width=""/> --> </div><br>
## wait()
@ -1249,5 +1247,10 @@ options 参数主要有 WNOHANG 和 WUNTRACED 两个选项WNOHANG 可以使 w
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -425,5 +425,10 @@ MySQL 提供了 FROM_UNIXTIME() 函数把 UNIX 时间戳转换为日期,并提
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -58,7 +58,7 @@ Redis 支持很多特性,例如将内存中的数据持久化到硬盘中,
| 数据类型 | 可以存储的值 | 操作 |
| :--: | :--: | :--: |
| STRING | 字符串整数或者浮点数 | 对整个字符串或者字符串的其中一部分执行操作</br> 对整数和浮点数执行自增或者自减操作 |
| LIST | 列表 | 从两端压入或者弹出元素 </br> 对单个或者多个元素</br> 进行修剪只保留一个范围内的元素 |
| LIST | 列表 | 从两端压入或者弹出元素 </br> 对单个或者多个元素进行修剪</br> 只保留一个范围内的元素 |
| SET | 无序集合 | 添加获取移除单个元素</br> 检查一个元素是否存在于集合中</br> 计算交集并集差集</br> 从集合里面随机获取元素 |
| HASH | 包含键值对的无序散列表 | 添加获取移除单个键值对</br> 获取所有键值对</br> 检查某个键是否存在|
| ZSET | 有序集合 | 添加获取删除元素</br> 根据分值范围或者成员来获取元素</br> 计算一个键的排名 |
@ -209,7 +209,7 @@ OK
## 字典
dictht 是一个散列表结构使用拉链法保存哈希冲突
dictht 是一个散列表结构使用拉链法解决哈希冲突
```c
/* This is our hash table structure. Every dictionary has two of this as we
@ -440,7 +440,7 @@ Redis 是内存型数据库,为了保证数据在断电后不会丢失,需
将写命令添加到 AOF 文件Append Only File的末尾
使用 AOF 持久化需要设置同步选项从而确保写命令什么时候会同步到磁盘文件上这是因为对文件进行写入并不会马上将内容同步到磁盘上而是先存储到缓冲区然后由操作系统决定什么时候同步到磁盘有以下同步选项
使用 AOF 持久化需要设置同步选项从而确保写命令同步到磁盘文件上的时机这是因为对文件进行写入并不会马上将内容同步到磁盘上而是先存储到缓冲区然后由操作系统决定什么时候同步到磁盘有以下同步选项
| 选项 | 同步频率 |
| :--: | :--: |
@ -610,5 +610,10 @@ Redis 没有关系型数据库中的表这一概念来将同种类型的数据
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -721,7 +721,7 @@ CREATE USER myuser IDENTIFIED BY 'mypassword';
**修改账户名**
```sql
RENAME myuser TO newuser;
RENAME USER myuser TO newuser;
```
**删除账户**
@ -773,5 +773,10 @@ SET PASSWROD FOR myuser = Password('new_password');
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -84,10 +84,10 @@ ssize_t recvfrom(int sockfd, void *buf, size_t len, int flags, struct sockaddr *
## 五大 I/O 模型比较
- 同步 I/O将数据从内核缓冲区复制到应用进程缓冲区的阶段应用进程会阻塞
- 异步 I/O不会阻塞
- 同步 I/O将数据从内核缓冲区复制到应用进程缓冲区的阶段第二阶段应用进程会阻塞
- 异步 I/O第二阶段应用进程不会阻塞
阻塞式 I/O非阻塞式 I/OI/O 复用和信号驱动 I/O 都是同步 I/O它们的主要区别在第一个阶段
同步 I/O 包括阻塞式 I/O非阻塞式 I/OI/O 复用和信号驱动 I/O 它们的主要区别在第一个阶段
非阻塞式 I/O 信号驱动 I/O 和异步 I/O 在第一阶段不会阻塞
@ -325,5 +325,10 @@ poll 没有最大描述符数量的限制,如果平台支持并且对实时性
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -70,7 +70,7 @@ int c = 111; // 注释
# 为何编写注释
阅读代码首先会注意到注释如果注释没太大作用那么就会浪费代码阅读的时间那些能直接看出含义的代码不需要写注释特别是不需要为每个方法都加上注释比如那些简单的 getter setter 方法为这些方法写注释反而让代码可读性更差
阅读代码首先会注意到注释如果注释没太大作用那么就会浪费代码阅读的时间那些能直接看出含义的代码不需要写注释特别是不需要为每个方法都加上注释比如那些简单的 getter setter 方法为这些方法写注释反而让代码可读性更差
不能因为有注释就随便起个名字而是争取起个好名字而不写注释
@ -335,5 +335,10 @@ public int findClostElement(int[] arr) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -9,5 +9,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -344,5 +344,10 @@ Raft 也是分布式一致性协议,主要是用来竞选主节点。
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -694,5 +694,10 @@ public boolean match(char[] str, char[] pattern) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -392,5 +392,10 @@ public ArrayList<Integer> printMatrix(int[][] matrix) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -472,5 +472,10 @@ public int MoreThanHalfNum_Solution(int[] nums) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -363,5 +363,10 @@ public int pop() throws Exception {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -420,5 +420,10 @@ public int GetUglyNumber_Solution(int N) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -481,5 +481,10 @@ public ArrayList<Integer> maxInWindows(int[] num, int size) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -324,5 +324,10 @@ public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -17,5 +17,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -17,5 +17,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -7,5 +7,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -195,5 +195,10 @@ ResultSet rs = stmt.executeQuery();
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -576,5 +576,10 @@ Entity-Relationship有三个组成部分实体、属性、联系。
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -32,10 +32,10 @@
# Java 主流构建工具
主要包括 AntMaven Gradle
Ant 具有编译测试和打包功能其后出现的 Maven Ant 的功能基础上又新增了依赖管理功能而最新的 Maven 又在 Maven 的功能基础上新增了对 Groovy 语言的支持
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/34751bd9-e8e4-4c20-94bc-f7217049fada.png" width="400px"> </div><br>
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/34751bd9-e8e4-4c20-94bc-f7217049fada.png" width="450px"> </div><br>
Gradle Maven 的区别是它使用 Groovy 这种特定领域语言DSL来管理构建脚本而不再使用 XML 这种标记性语言因为项目如果庞大的话XML 很容易就变得臃肿
@ -82,7 +82,7 @@ dependencies {
- 本地仓库用来存储项目的依赖库
- 中央仓库是下载依赖库的默认位置
- 远程仓库因为并非所有的库存储在中央仓库或者中央仓库访问速度很慢远程仓库是中央仓库的补充
- 远程仓库因为并非所有的依赖库都在中央仓库或者中央仓库访问速度很慢远程仓库是中央仓库的补充
## POM
@ -99,7 +99,6 @@ POM 代表项目对象模型,它是一个 XML 文件,保存在项目根目
[groupId, artifactId, version, packaging, classifier] 称为一个项目的坐标其中 groupIdartifactIdversion 必须定义packaging 可选默认为 Jarclassifier 不能直接定义的需要结合插件使用
- groupId项目组 Id必须全球唯一
- artifactId项目 Id即项目名
- version项目版本
@ -144,5 +143,10 @@ A -> C -> X(2.0)
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -390,5 +390,10 @@ aBCd
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -81,5 +81,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -136,5 +136,10 @@ public class Huffman {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -194,5 +194,10 @@ public class WeightedQuickUnionUF extends UF {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -579,10 +579,15 @@ public class HeapSort<T extends Comparable<T>> extends Sort<T> {
## 2. Java 的排序算法实现
Java 主要排序方法为 java.util.Arrays.sort()对于原始数据类型使用三向切分的快速排序对于引用类型使用归并排序
Java 主要排序方法为 java.util.Arrays.sort()对于原始数据类型使用三向切分的快速排序对于引用类型使用归并排序
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -320,5 +320,10 @@ public class ListQueue<Item> implements MyQueue<Item> {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -16,5 +16,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -16,5 +16,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -942,5 +942,10 @@ public class SparseVector {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -238,5 +238,10 @@ public class StopWatch {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -7,5 +7,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -111,5 +111,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -310,5 +310,10 @@ Distributed Hash TableDHT 是一种哈希分布方式,其目的是为了
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -142,5 +142,10 @@ FIFO 算法可能会把经常使用的页面置换出去,为了避免这一问
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -36,15 +36,15 @@
有两种共享方式互斥共享和同时共享
互斥共享的资源称为临界资源例如打印机等在同一时间只允许一个进程访问需要用同步机制来实现对临界资源的访问
互斥共享的资源称为临界资源例如打印机等在同一时刻只允许一个进程访问需要用同步机制来实现互斥访问
## 3. 虚拟
虚拟技术把一个物理实体转换为多个逻辑实体
主要有两种虚拟技术分复用技术和空分复用技术
主要有两种虚拟技术时间分复用技术和空空间分复用技术
多个进程能在同一个处理器上并发执行使用了时分复用技术让每个进程轮流占处理器每次只执行一小个时间片并快速切换
多个进程能在同一个处理器上并发执行使用了时分复用技术让每个进程轮流占处理器每次只执行一小个时间片并快速切换
虚拟内存使用了空分复用技术它将物理内存抽象为地址空间每个进程都有各自的地址空间地址空间的页被映射到物理内存地址空间的页并不需要全部在物理内存中当使用到一个没有在物理内存的页时执行页面置换算法将该页置换到内存中
@ -124,5 +124,10 @@ Linux 的系统调用主要有以下这些:
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -144,5 +144,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -24,5 +24,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -24,5 +24,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -61,5 +61,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -158,7 +158,7 @@ QQ 和浏览器是两个进程,浏览器进程里面有很多线程,例如 H
## 2. 同步与互斥
- 同步多个进程按一定顺序执行
- 同步多个进程因为合作产生的直接制约关系使得进程有一定的先后执行关系
- 互斥多个进程在同一时刻只有一个进程能进入临界区
## 3. 信号量
@ -545,7 +545,7 @@ int pipe(int fd[2]);
它具有以下限制
- 只支持半双工通信单向交替传输
- 只能在父子进程中使用
- 只能在父子进程或者兄弟进程中使用
<div align="center"> <img src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/53cd9ade-b0a6-4399-b4de-7f1fbd06cdfb.png"/> </div><br>
@ -590,5 +590,10 @@ FIFO 常用于客户-服务器应用程序中FIFO 用作汇聚点,在客户
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -68,5 +68,10 @@ gcc -o hello hello.c
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -7,5 +7,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -167,5 +167,10 @@ TCP 主要通过四个算法来进行拥塞控制:慢开始、拥塞避免、
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -168,5 +168,10 @@ IMAP 协议中客户端和服务器上的邮件保持同步,如果不手动删
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -134,5 +134,10 @@ TCP/IP 体系结构不严格遵循 OSI 分层概念,应用层可能会直接
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -22,5 +22,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -30,5 +30,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -31,5 +31,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -244,5 +244,10 @@ BGP 只能寻找一条比较好的路由,而不是最佳路由。
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -198,5 +198,10 @@ MAC 地址是链路层地址,长度为 6 字节48 位),用于唯一标
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -7,5 +7,10 @@
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -131,7 +131,7 @@ public class Singleton {
}
```
考虑下面的实现也就是只使用了一个 if 语句 uniqueInstance == null 的情况下如果两个线程都执行了 if 语句那么两个线程都会进入 if 语句块内虽然在 if 语句块内有加锁操作但是两个线程都会执行 `uniqueInstance = new Singleton();` 这条语句只是先后的问题那么就会进行两次实例化因此必须使用双重校验锁也就是需要使用两个 if 语句
考虑下面的实现也就是只使用了一个 if 语句 uniqueInstance == null 的情况下如果两个线程都执行了 if 语句那么两个线程都会进入 if 语句块内虽然在 if 语句块内有加锁操作但是两个线程都会执行 `uniqueInstance = new Singleton();` 这条语句只是先后的问题那么就会进行两次实例化因此必须使用双重校验锁也就是需要使用两个 if 语句第一个 if 语句用来避免 uniqueInstance 已经被实例化之后的加锁操作而第二个 if 语句进行了加锁所以只能有一个线程进入就不会出现 uniqueInstance == null 时两个线程同时进行实例化操作
```java
if (uniqueInstance == null) {
@ -153,7 +153,7 @@ uniqueInstance 采用 volatile 关键字修饰也是很有必要的, `uniqueIn
#### 静态内部类实现
Singleton 加载时静态内部类 SingletonHolder 没有被加载进内存只有当调用 `getUniqueInstance()` 方法从而触发 `SingletonHolder.INSTANCE` SingletonHolder 才会被加载此时初始化 INSTANCE 实例并且 JVM 能确保 INSTANCE 只被实例化一次
Singleton 加载时静态内部类 SingletonHolder 没有被加载进内存只有当调用 `getUniqueInstance()` 方法从而触发 `SingletonHolder.INSTANCE` SingletonHolder 才会被加载此时初始化 INSTANCE 实例并且 JVM 能确保 INSTANCE 只被实例化一次
这种方式不仅具有延迟初始化的好处而且由 JVM 提供了对线程安全的支持
@ -224,10 +224,10 @@ secondName
secondName
```
该实现在多次序列化再进行反序列化之后不会得到多个实例而其它实现需要使用 transient 修饰所有字段并且实现序列化和反序列化的方法
该实现可以防止反射攻击在其它实现中通过 setAccessible() 方法可以将私有构造函数的访问级别设置为 public然后调用构造函数从而实例化对象如果要防止这种攻击需要在构造函数中添加防止多次实例化的代码该实现是由 JVM 保证只会实例化一次因此不会出现上述的反射攻击
该实现在多次序列化和序列化之后不会得到多个实例而其它实现需要使用 transient 修饰所有字段并且实现序列化和反序列化的方法
### Examples
- Logger Classes
@ -3068,5 +3068,10 @@ public class ImageViewer {
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -203,5 +203,10 @@ HTTP 重定向负载均衡服务器使用某种负载均衡算法计算得到服
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -21,13 +21,13 @@
## 封装
利用抽象数据类型将数据和基于数据的操作封装在一起使其构成一个不可分割的独立实体数据被保护在抽象数据类型的内部尽可能地隐藏内部的细节只保留一些对外接口使之与外部发生联系用户无需知道对象内部的细节但可以通过对象对外提供的接口来访问该对象
利用抽象数据类型将数据和基于数据的操作封装在一起使其构成一个不可分割的独立实体数据被保护在抽象数据类型的内部尽可能地隐藏内部的细节只保留一些对外的接口使其与外部发生联系用户无需关心对象内部的细节但可以通过对象对外提供的接口来访问该对象
优点
- 减少耦合可以独立地开发测试优化使用理解和修改
- 减轻维护的负担可以更容易被程序员理解并且在调试的时候可以不影响其他模块
- 有效地调节性能可以通过剖析确定哪些模块影响了系统的性能
- 有效地调节性能可以通过剖析确定哪些模块影响了系统的性能
- 提高软件的可重用性
- 降低了构建大型系统的风险即使整个系统不可用但是这些独立的模块却有可能是可用的
@ -94,21 +94,27 @@ public class Instrument {
System.out.println("Instument is playing...");
}
}
```
```java
public class Wind extends Instrument {
public void play() {
System.out.println("Wind is playing...");
}
}
```
```java
public class Percussion extends Instrument {
public void play() {
System.out.println("Percussion is playing...");
}
}
```
```java
public class Music {
public static void main(String[] args) {
@ -122,6 +128,11 @@ public class Music {
}
```
```
Wind is playing...
Percussion is playing...
```
# 类图
以下类图使用 [PlantUML](https://www.planttext.com/) 绘制更多语法及使用请参考http://plantuml.com/
@ -361,5 +372,10 @@ Vihicle .. N
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

View File

@ -91,5 +91,10 @@ Docker 轻量级的特点使得它很适合用于部署、维护、组合微服
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -24,7 +24,7 @@ Git 属于分布式版本控制系统,而 SVN 属于集中式。
集中式版本控制有安全性问题当中心服务器挂了所有人都没办法工作了
集中式版本控制需要连网才能工作如果网速过慢那么提交一个文件会慢的无法让人忍受而分布式版本控制不需要连网就能工作
集中式版本控制需要连网才能工作如果网速过慢那么提交一个文件会慢的无法让人忍受而分布式版本控制不需要连网就能工作
分布式版本控制新建分支合并分支操作速度非常快而集中式版本控制新建一个分支相当于复制一份完整代码
@ -38,7 +38,7 @@ Github 就是一个中心服务器。
新建一个仓库之后当前目录就成为了工作区工作区下有一个隐藏目录 .git它属于 Git 的版本库
Git 的版本库有一个称为 Stage 的暂存区以及最后的 History 版本库History 中存有所有分支使用一个 HEAD 指针指向当前分支
Git 的版本库有一个称为 Stage 的暂存区以及最后的 History 版本库History 存储所有分支信息使用一个 HEAD 指针指向当前分支
<div align="center"> <img src="pics/71b97a50-a49f-4f1a-81d1-48c3364d61b3.png" width="700px"> </div><br>
@ -62,7 +62,7 @@ Git 的版本库有一个称为 Stage 的暂存区以及最后的 History 版本
<div align="center"> <img src="pics/ec4d7464-7140-46d8-827e-d63634202e1e.png" width="220px"> </div><br>
新建分支是新建一个指针指向时间线的最后一个节点并让 HEAD 指针指向新分支表示新分支成为当前分支
新建分支是新建一个指针指向时间线的最后一个节点并让 HEAD 指针指向新分支表示新分支成为当前分支
<div align="center"> <img src="pics/66d00642-ce37-466c-8f7a-143d0bf84cd6.png" width="220px"> </div><br>
@ -114,7 +114,7 @@ master 分支应该是非常稳定的,只用来发布新版本;
在一个分支上操作之后如果还没有将修改提交到分支上此时进行切换分支那么另一个分支上也能看到新的修改这是因为所有分支都共用一个工作区的缘故
可以使用 git stash 将当前分支的修改储藏起来此时当前工作区的所有修改都会被存到栈也就是说当前工作区是干净的没有任何未提交的修改此时就可以安全的切换到其它分支上了
可以使用 git stash 将当前分支的修改储藏起来此时当前工作区的所有修改都会被存到栈也就是说当前工作区是干净的没有任何未提交的修改此时就可以安全的切换到其它分支上了
```
$ git stash
@ -162,5 +162,10 @@ $ ssh-keygen -t rsa -C "youremail@example.com"
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

View File

@ -881,5 +881,10 @@ DELETE /idX/delete HTTP/1.1 -> Returns 404
</br><div align="center">💡 </br></br> 更多精彩内容将发布在公众号 **CyC2018**公众号提供了该项目的离线阅读版本后台回复"下载" 即可领取也提供了一份技术面试复习思维导图不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复"资料" 即可领取我基本是按照这个思维导图来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据思维导图上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间</div></br>
<div align="center"><img width="180px" src="https://cyc-1256109796.cos.ap-guangzhou.myqcloud.com/%E5%85%AC%E4%BC%97%E5%8F%B7.jpg"></img></div>
# 微信公众号
更多精彩内容将发布在微信公众号 CyC2018 你也可以在公众号后台和我交流学习和求职相关的问题另外公众号提供了该项目的 PDF 等离线阅读版本后台回复 "下载" 即可领取公众号也提供了一份技术面试复习大纲不仅系统整理了面试知识点而且标注了各个知识点的重要程度从而帮你理清多而杂的面试知识点后台回复 "大纲" 即可领取我基本是按照这个大纲来进行复习的对我拿到了 BAT 头条等 Offer 起到很大的帮助你们完全可以和我一样根据大纲上列的知识点来进行复习就不用看很多不重要的内容也可以知道哪些内容很重要从而多安排一些复习时间
<div align="center"><img width="480px" src="https://cs-notes-1256109796.cos.ap-guangzhou.myqcloud.com/other/公众号海报3.png"></img></div>

Some files were not shown because too many files have changed in this diff Show More