diff --git a/docs/notes/Git.md b/docs/notes/Git.md index aeb88045ef7274b6c80209a540335a84705e5fb7..6cd8a8294521c6328eca42ad3991682b56f42cb4 100644 --- a/docs/notes/Git.md +++ b/docs/notes/Git.md @@ -19,6 +19,8 @@ Git 属于分布式版本控制系统,而 SVN 属于集中式。 +

+ 集中式版本控制只有中心服务器拥有一份代码,而分布式版本控制每个人的电脑上就有一份完整的代码。 集中式版本控制有安全性问题,当中心服务器挂了所有人都没办法工作了。 @@ -35,49 +37,49 @@ Github 就是一个中心服务器。 # 工作流 -

- 新建一个仓库之后,当前目录就成为了工作区,工作区下有一个隐藏目录 .git,它属于 Git 的版本库。 -Git 版本库有一个称为 stage 的暂存区,还有自动创建的 master 分支以及指向分支的 HEAD 指针。 +Git 的版本库有一个称为 Stage 的暂存区以及最后的 History 版本库,History 中存有所有分支,使用一个 HEAD 指针指向当前分支。 -

+

- git add files 把文件的修改添加到暂存区 - git commit 把暂存区的修改提交到当前分支,提交之后暂存区就被清空了 - git reset -- files 使用当前分支上的修改覆盖暂存区,用来撤销最后一次 git add files - git checkout -- files 使用暂存区的修改覆盖工作目录,用来撤销本地修改 -

+

可以跳过暂存区域直接从分支中取出修改,或者直接提交修改到分支中。 - git commit -a 直接把所有文件的修改添加到暂存区然后执行提交 - git checkout HEAD -- files 取出最后一次修改,可以用来进行回滚操作 +

+ # 分支实现 使用指针将每个提交连接成一条时间线,HEAD 指针指向当前分支指针。 -

+

新建分支是新建一个指针指向时间线的最后一个节点,并让 HEAD 指针指向新分支表示新分支成为当前分支。 -

+

每次提交只会让当前分支指针向前移动,而其它分支指针不会移动。 -

+

合并分支也只需要改变指针即可。 -

+

# 冲突 当两个分支都对同一个文件的同一行进行了修改,在分支合并时就会产生冲突。 -

+

Git 会使用 <<<<<<< ,======= ,>>>>>>> 标记出不同分支的内容,只需要把不同分支中冲突部分修改成一样就能解决冲突。 @@ -99,7 +101,7 @@ Creating a new branch is quick AND simple. $ git merge --no-ff -m "merge with no-ff" dev ``` -

+

# 分支管理策略 diff --git a/docs/notes/HTTP.md b/docs/notes/HTTP.md index ef821d3dd0f8b5eab287e61f21513f6dba2e272b..2cf5623a093af47d1e4f49377839c2fe64f6feaf 100644 --- a/docs/notes/HTTP.md +++ b/docs/notes/HTTP.md @@ -35,11 +35,11 @@ * [多部分对象集合](#多部分对象集合) * [虚拟主机](#虚拟主机) * [通信数据转发](#通信数据转发) -* [六、HTTPs](#六https) +* [六、HTTPS](#六https) * [加密](#加密) * [认证](#认证) * [完整性保护](#完整性保护) - * [HTTPs 的缺点](#https-的缺点) + * [HTTPS 的缺点](#https-的缺点) * [七、HTTP/2.0](#七http20) * [HTTP/1.x 缺陷](#http1x-缺陷) * [二进制分帧层](#二进制分帧层) @@ -650,7 +650,7 @@ HTTP/1.1 使用虚拟主机技术,使得一台服务器拥有多个域名, 使用 SSL 等加密手段,在客户端和服务器之间建立一条安全的通信线路。 -# 六、HTTPs +# 六、HTTPS HTTP 有以下安全性问题: @@ -658,9 +658,9 @@ HTTP 有以下安全性问题: - 不验证通信方的身份,通信方的身份有可能遭遇伪装; - 无法证明报文的完整性,报文有可能遭篡改。 -HTTPs 并不是新协议,而是让 HTTP 先和 SSL(Secure Sockets Layer)通信,再由 SSL 和 TCP 通信,也就是说 HTTPs 使用了隧道进行通信。 +HTTPS 并不是新协议,而是让 HTTP 先和 SSL(Secure Sockets Layer)通信,再由 SSL 和 TCP 通信,也就是说 HTTPS 使用了隧道进行通信。 -通过使用 SSL,HTTPs 具有了加密(防窃听)、认证(防伪装)和完整性保护(防篡改)。 +通过使用 SSL,HTTPS 具有了加密(防窃听)、认证(防伪装)和完整性保护(防篡改)。

@@ -688,9 +688,9 @@ HTTPs 并不是新协议,而是让 HTTP 先和 SSL(Secure Sockets Layer)

-### 3. HTTPs 采用的加密方式 +### 3. HTTPS 采用的加密方式 -HTTPs 采用混合的加密机制,使用非对称密钥加密用于传输对称密钥来保证传输过程的安全性,之后使用对称密钥加密进行通信来保证通信过程的效率。(下图中的 Session Key 就是对称密钥) +HTTPS 采用混合的加密机制,使用非对称密钥加密用于传输对称密钥来保证传输过程的安全性,之后使用对称密钥加密进行通信来保证通信过程的效率。(下图中的 Session Key 就是对称密钥)

@@ -702,7 +702,7 @@ HTTPs 采用混合的加密机制,使用非对称密钥加密用于传输对 服务器的运营人员向 CA 提出公开密钥的申请,CA 在判明提出申请者的身份之后,会对已申请的公开密钥做数字签名,然后分配这个已签名的公开密钥,并将该公开密钥放入公开密钥证书后绑定在一起。 -进行 HTTPs 通信时,服务器会把证书发送给客户端。客户端取得其中的公开密钥之后,先使用数字签名进行验证,如果验证通过,就可以开始通信了。 +进行 HTTPS 通信时,服务器会把证书发送给客户端。客户端取得其中的公开密钥之后,先使用数字签名进行验证,如果验证通过,就可以开始通信了。

@@ -712,9 +712,9 @@ SSL 提供报文摘要功能来进行完整性保护。 HTTP 也提供了 MD5 报文摘要功能,但不是安全的。例如报文内容被篡改之后,同时重新计算 MD5 的值,通信接收方是无法意识到发生了篡改。 -HTTPs 的报文摘要功能之所以安全,是因为它结合了加密和认证这两个操作。试想一下,加密之后的报文,遭到篡改之后,也很难重新计算报文摘要,因为无法轻易获取明文。 +HTTPS 的报文摘要功能之所以安全,是因为它结合了加密和认证这两个操作。试想一下,加密之后的报文,遭到篡改之后,也很难重新计算报文摘要,因为无法轻易获取明文。 -## HTTPs 的缺点 +## HTTPS 的缺点 - 因为需要进行加密解密等过程,因此速度会更慢; - 需要支付证书授权的高额费用。 diff --git "a/docs/notes/Leetcode \351\242\230\350\247\243.md" "b/docs/notes/Leetcode \351\242\230\350\247\243.md" index 7687a4d42ef34c2b027851beb3222aaebb8eaba7..f60ed174723d619efed5090b49717b5b4fc16d4b 100644 --- "a/docs/notes/Leetcode \351\242\230\350\247\243.md" +++ "b/docs/notes/Leetcode \351\242\230\350\247\243.md" @@ -67,7 +67,7 @@ ```html Input: numbers={2, 7, 11, 15}, target=9 Output: index1=1, index2=2 -``` +```3 题目描述:在有序数组中找出两个数,使它们的和为 target。 @@ -403,8 +403,10 @@ public List topKFrequent(int[] nums, int k) { } List topK = new ArrayList<>(); for (int i = buckets.length - 1; i >= 0 && topK.size() < k; i--) { - if (buckets[i] != null) { + if (buckets[i].size() <= (k - topK.size())) { topK.addAll(buckets[i]); + } else { + topK.addAll(buckets[i].subList(0, k - topK.size())); } } return topK; diff --git a/docs/notes/pics/0f9b9d2a-c5cc-4a3f-b138-2c1035950f39_200.png b/docs/notes/pics/0f9b9d2a-c5cc-4a3f-b138-2c1035950f39_200.png new file mode 100644 index 0000000000000000000000000000000000000000..0b4a58384a721ff18db0991220a8d1cafa585cec Binary files /dev/null and b/docs/notes/pics/0f9b9d2a-c5cc-4a3f-b138-2c1035950f39_200.png differ diff --git a/docs/notes/pics/11a786f0-5e02-46a6-92f0-f302c9cf6ca3_200.png b/docs/notes/pics/11a786f0-5e02-46a6-92f0-f302c9cf6ca3_200.png new file mode 100644 index 0000000000000000000000000000000000000000..5368338645416b292147064c6e4d00647d047791 Binary files /dev/null and b/docs/notes/pics/11a786f0-5e02-46a6-92f0-f302c9cf6ca3_200.png differ diff --git a/docs/notes/pics/13783e94-b481-4aea-9fa2-9d1973abd47e_200.png b/docs/notes/pics/13783e94-b481-4aea-9fa2-9d1973abd47e_200.png new file mode 100644 index 0000000000000000000000000000000000000000..10d2aab07d16176f9e0536acf57ce71d9ab10d38 Binary files /dev/null and b/docs/notes/pics/13783e94-b481-4aea-9fa2-9d1973abd47e_200.png differ diff --git a/docs/notes/pics/15699a17-5a69-4fbe-852e-9d2b7cf05e80_200.png b/docs/notes/pics/15699a17-5a69-4fbe-852e-9d2b7cf05e80_200.png new file mode 100644 index 0000000000000000000000000000000000000000..85d93b2705105ef992dcca31b6a68bd6a86a6180 Binary files /dev/null and b/docs/notes/pics/15699a17-5a69-4fbe-852e-9d2b7cf05e80_200.png differ diff --git a/docs/notes/pics/7c5bcdbf-e656-4b7c-be82-b247a3589ed5_200.png b/docs/notes/pics/7c5bcdbf-e656-4b7c-be82-b247a3589ed5_200.png new file mode 100644 index 0000000000000000000000000000000000000000..cf1868b606330d62b11d94b15175334885c5461c Binary files /dev/null and b/docs/notes/pics/7c5bcdbf-e656-4b7c-be82-b247a3589ed5_200.png differ diff --git a/docs/notes/pics/7e82ce01-2afb-4c15-b720-b81049c875c2_200.png b/docs/notes/pics/7e82ce01-2afb-4c15-b720-b81049c875c2_200.png new file mode 100644 index 0000000000000000000000000000000000000000..0741f44ee2c65d72a0d0bafffcec9825dfd7acbb Binary files /dev/null and b/docs/notes/pics/7e82ce01-2afb-4c15-b720-b81049c875c2_200.png differ diff --git a/docs/notes/pics/84d496d7-54b0-4a9b-9499-ce232057e499_200.png b/docs/notes/pics/84d496d7-54b0-4a9b-9499-ce232057e499_200.png new file mode 100644 index 0000000000000000000000000000000000000000..5423ac859677715ffe51ce22650ee52a181acfc0 Binary files /dev/null and b/docs/notes/pics/84d496d7-54b0-4a9b-9499-ce232057e499_200.png differ diff --git a/docs/notes/pics/b48b9a7a-f9f8-4cf9-90f1-5cddd685b782_200.png b/docs/notes/pics/b48b9a7a-f9f8-4cf9-90f1-5cddd685b782_200.png new file mode 100644 index 0000000000000000000000000000000000000000..ac9868d1ebc40e21f9055106375626346d97a33c Binary files /dev/null and b/docs/notes/pics/b48b9a7a-f9f8-4cf9-90f1-5cddd685b782_200.png differ diff --git a/docs/notes/pics/fa1dc552-8501-439e-b85a-3d9eac704880_200.png b/docs/notes/pics/fa1dc552-8501-439e-b85a-3d9eac704880_200.png new file mode 100644 index 0000000000000000000000000000000000000000..2142bbb59f909253e56666adc17a5542a66d0cf1 Binary files /dev/null and b/docs/notes/pics/fa1dc552-8501-439e-b85a-3d9eac704880_200.png differ diff --git a/docs/notes/pics/fac3dfd6-1656-4329-9a80-7f6c51ef30c5_200.png b/docs/notes/pics/fac3dfd6-1656-4329-9a80-7f6c51ef30c5_200.png new file mode 100644 index 0000000000000000000000000000000000000000..31ae3277cd1e9c5556386ccc4ec03c6100d2a8fc Binary files /dev/null and b/docs/notes/pics/fac3dfd6-1656-4329-9a80-7f6c51ef30c5_200.png differ diff --git a/docs/pics/0f9b9d2a-c5cc-4a3f-b138-2c1035950f39_200.png b/docs/pics/0f9b9d2a-c5cc-4a3f-b138-2c1035950f39_200.png new file mode 100644 index 0000000000000000000000000000000000000000..0b4a58384a721ff18db0991220a8d1cafa585cec Binary files /dev/null and b/docs/pics/0f9b9d2a-c5cc-4a3f-b138-2c1035950f39_200.png differ diff --git a/docs/pics/11a786f0-5e02-46a6-92f0-f302c9cf6ca3_200.png b/docs/pics/11a786f0-5e02-46a6-92f0-f302c9cf6ca3_200.png new file mode 100644 index 0000000000000000000000000000000000000000..5368338645416b292147064c6e4d00647d047791 Binary files /dev/null and b/docs/pics/11a786f0-5e02-46a6-92f0-f302c9cf6ca3_200.png differ diff --git a/docs/pics/13783e94-b481-4aea-9fa2-9d1973abd47e_200.png b/docs/pics/13783e94-b481-4aea-9fa2-9d1973abd47e_200.png new file mode 100644 index 0000000000000000000000000000000000000000..10d2aab07d16176f9e0536acf57ce71d9ab10d38 Binary files /dev/null and b/docs/pics/13783e94-b481-4aea-9fa2-9d1973abd47e_200.png differ diff --git a/docs/pics/15699a17-5a69-4fbe-852e-9d2b7cf05e80_200.png b/docs/pics/15699a17-5a69-4fbe-852e-9d2b7cf05e80_200.png new file mode 100644 index 0000000000000000000000000000000000000000..85d93b2705105ef992dcca31b6a68bd6a86a6180 Binary files /dev/null and b/docs/pics/15699a17-5a69-4fbe-852e-9d2b7cf05e80_200.png differ diff --git a/docs/pics/7c5bcdbf-e656-4b7c-be82-b247a3589ed5_200.png b/docs/pics/7c5bcdbf-e656-4b7c-be82-b247a3589ed5_200.png new file mode 100644 index 0000000000000000000000000000000000000000..cf1868b606330d62b11d94b15175334885c5461c Binary files /dev/null and b/docs/pics/7c5bcdbf-e656-4b7c-be82-b247a3589ed5_200.png differ diff --git a/docs/pics/7e82ce01-2afb-4c15-b720-b81049c875c2_200.png b/docs/pics/7e82ce01-2afb-4c15-b720-b81049c875c2_200.png new file mode 100644 index 0000000000000000000000000000000000000000..0741f44ee2c65d72a0d0bafffcec9825dfd7acbb Binary files /dev/null and b/docs/pics/7e82ce01-2afb-4c15-b720-b81049c875c2_200.png differ diff --git a/docs/pics/84d496d7-54b0-4a9b-9499-ce232057e499_200.png b/docs/pics/84d496d7-54b0-4a9b-9499-ce232057e499_200.png new file mode 100644 index 0000000000000000000000000000000000000000..5423ac859677715ffe51ce22650ee52a181acfc0 Binary files /dev/null and b/docs/pics/84d496d7-54b0-4a9b-9499-ce232057e499_200.png differ diff --git a/docs/pics/b48b9a7a-f9f8-4cf9-90f1-5cddd685b782_200.png b/docs/pics/b48b9a7a-f9f8-4cf9-90f1-5cddd685b782_200.png new file mode 100644 index 0000000000000000000000000000000000000000..ac9868d1ebc40e21f9055106375626346d97a33c Binary files /dev/null and b/docs/pics/b48b9a7a-f9f8-4cf9-90f1-5cddd685b782_200.png differ diff --git a/docs/pics/fa1dc552-8501-439e-b85a-3d9eac704880_200.png b/docs/pics/fa1dc552-8501-439e-b85a-3d9eac704880_200.png new file mode 100644 index 0000000000000000000000000000000000000000..2142bbb59f909253e56666adc17a5542a66d0cf1 Binary files /dev/null and b/docs/pics/fa1dc552-8501-439e-b85a-3d9eac704880_200.png differ diff --git a/docs/pics/fac3dfd6-1656-4329-9a80-7f6c51ef30c5_200.png b/docs/pics/fac3dfd6-1656-4329-9a80-7f6c51ef30c5_200.png new file mode 100644 index 0000000000000000000000000000000000000000..31ae3277cd1e9c5556386ccc4ec03c6100d2a8fc Binary files /dev/null and b/docs/pics/fac3dfd6-1656-4329-9a80-7f6c51ef30c5_200.png differ