From 71c76445fc9681de87baaf8b62080aa10d8934af Mon Sep 17 00:00:00 2001
From: CyC2018 <1029579233@qq.com>
Date: Sat, 24 Mar 2018 21:56:48 +0800
Subject: [PATCH] auto commit
---
notes/算法.md | 99 +++++++++---------
pics/04662fa2-d19b-4de3-a829-50acb7af75d7.png | Bin 0 -> 59392 bytes
pics/0f86eb11-3724-48de-9f27-499dfc7e96f1.png | Bin 0 -> 68608 bytes
pics/12b458dd-526d-46e2-acca-cf3b501d580e.png | Bin 0 -> 124928 bytes
...74-6b9d-4f25-a016-7ad4f1f1521898780376.png | Bin 0 -> 81920 bytes
pics/40fe0669-6ac2-46f1-8666-a03785ad7412.png | Bin 0 -> 37888 bytes
...85-b917-446b-84a2-9810ee41521898714517.png | Bin 0 -> 46080 bytes
pics/5e8493be-72cc-4a76-a68f-4852eacb2811.png | Bin 0 -> 10240 bytes
...a5-fa65-4ee0-a4a9-bd9adba1521899256460.jpg | Bin 0 -> 107520 bytes
pics/6e874d3e-9999-4d14-b6c9-fc7776c7ce30.png | Bin 0 -> 41984 bytes
...06-0781-4f9d-9093-70a87111521898809910.jpg | Bin 0 -> 87040 bytes
pics/7ca30d08-f7fa-4e39-b386-93c70631a900.png | Bin 0 -> 52224 bytes
pics/8459a13f-b0b8-4387-85a9-2525482bc25a.png | Bin 0 -> 201728 bytes
pics/88ae5997-50ab-4204-891f-88e212ba892e.png | Bin 0 -> 39936 bytes
pics/9653b0c6-4232-4299-9f5c-79a616abafb8.png | Bin 0 -> 56320 bytes
pics/d3352e6a-483a-44f2-930e-28c1d677f9b9.png | Bin 0 -> 566272 bytes
pics/d3b06a52-cce1-4e05-aeff-1680a282b178.png | Bin 0 -> 43008 bytes
pics/d7c6c42d-a4d8-4b85-82fb-c21250bf5ca1.png | Bin 0 -> 83968 bytes
pics/ed23a7cd-d55f-453d-b5bc-076d7b1c002e.jpg | Bin 0 -> 31744 bytes
pics/f2af8957-d498-462f-9d11-f1c17876ba8e.png | Bin 0 -> 129024 bytes
pics/f47f9729-29ed-4c17-9924-76139342fac7.png | Bin 0 -> 62464 bytes
21 files changed, 50 insertions(+), 49 deletions(-)
create mode 100644 pics/04662fa2-d19b-4de3-a829-50acb7af75d7.png
create mode 100644 pics/0f86eb11-3724-48de-9f27-499dfc7e96f1.png
create mode 100644 pics/12b458dd-526d-46e2-acca-cf3b501d580e.png
create mode 100644 pics/1c012d74-6b9d-4f25-a016-7ad4f1f1521898780376.png
create mode 100644 pics/40fe0669-6ac2-46f1-8666-a03785ad7412.png
create mode 100644 pics/5c0bb285-b917-446b-84a2-9810ee41521898714517.png
create mode 100644 pics/5e8493be-72cc-4a76-a68f-4852eacb2811.png
create mode 100644 pics/691e8da5-fa65-4ee0-a4a9-bd9adba1521899256460.jpg
create mode 100644 pics/6e874d3e-9999-4d14-b6c9-fc7776c7ce30.png
create mode 100644 pics/78570a06-0781-4f9d-9093-70a87111521898809910.jpg
create mode 100644 pics/7ca30d08-f7fa-4e39-b386-93c70631a900.png
create mode 100644 pics/8459a13f-b0b8-4387-85a9-2525482bc25a.png
create mode 100644 pics/88ae5997-50ab-4204-891f-88e212ba892e.png
create mode 100644 pics/9653b0c6-4232-4299-9f5c-79a616abafb8.png
create mode 100644 pics/d3352e6a-483a-44f2-930e-28c1d677f9b9.png
create mode 100644 pics/d3b06a52-cce1-4e05-aeff-1680a282b178.png
create mode 100644 pics/d7c6c42d-a4d8-4b85-82fb-c21250bf5ca1.png
create mode 100644 pics/ed23a7cd-d55f-453d-b5bc-076d7b1c002e.jpg
create mode 100644 pics/f2af8957-d498-462f-9d11-f1c17876ba8e.png
create mode 100644 pics/f47f9729-29ed-4c17-9924-76139342fac7.png
diff --git a/notes/算法.md b/notes/算法.md
index 48bf2bd0..18ba2521 100644
--- a/notes/算法.md
+++ b/notes/算法.md
@@ -125,7 +125,7 @@ public class ThreeSumFast {
例如对于暴力方法的 ThreeSum 算法,近似时间为 \~N3/6。进行如下实验:多次运行该算法,每次取的 N 值为前一次的两倍,统计每次执行的时间,并统计本次运行时间与前一次运行时间的比值,得到如下结果:
-
+
可以看到,T(2N)/T(N)\~23,因此可以确定 T(N) \~ aN2logN。
@@ -476,7 +476,7 @@ private void exch(Comparable[] a, int i, int j){
找到数组中的最小元素,将它与数组的第一个元素交换位置。再从剩下的元素中找到最小的元素,将它与数组的第二个元素交换位置。不断进行这样的操作,直到将整个数组排序。
-
+
```java
public class Selection {
@@ -499,7 +499,7 @@ public class Selection {
插入排序从左到右进行,每次都将当前元素插入到左部已经排序的数组中,使得插入之后左部数组依然有序。
-
+
```java
public class Insertion {
@@ -530,7 +530,7 @@ public class Insertion {
希尔排序使用插入排序对间隔 h 的序列进行排序,如果 h 很大,那么元素就能很快的移到很远的地方。通过不断减小 h,最后令 h=1,就可以使得整个数组是有序的。
-
+
```java
public class Shell {
@@ -558,7 +558,7 @@ public class Shell {
归并排序的思想是将数组分成两部分,分别进行排序,然后归并起来。
-
+
### 1. 归并方法
@@ -602,9 +602,9 @@ private static void sort(Comparable[] a, int lo, int hi) {
}
```
-
+
-
+
因为每次都将问题对半分成两个子问题,而这种对半分的算法复杂度一般为 O(NlogN),因此该归并排序方法的时间复杂度也为 O(NlogN)。
@@ -614,7 +614,7 @@ private static void sort(Comparable[] a, int lo, int hi) {
先归并那些微型数组,然后成对归并得到的子数组。
-
+
```java
public static void busort(Comparable[] a) {
@@ -634,7 +634,7 @@ public static void busort(Comparable[] a) {
归并排序将数组分为两个子数组分别排序,并将有序的子数组归并使得整个数组排序;快速排序通过一个切分元素将数组分为两个子数组,左子数组小于等于切分元素,右子数组大于等于切分元素,将这两个子数组排序也就将整个数组排序了。
-
+
```java
public class QuickSort {
@@ -656,7 +656,7 @@ public class QuickSort {
取 a[lo] 作为切分元素,然后从数组的左端向右扫描直到找到第一个大于等于它的元素,再从数组的右端向左扫描找到第一个小于等于它的元素,交换这两个元素,并不断继续这个过程,就可以保证左指针的左侧元素都不大于切分元素,右指针 j 的右侧元素都不小于切分元素。当两个指针相遇时,将切分元素 a[lo] 和左子数组最右侧的元素 a[j] 交换然后返回 j 即可。
-
+
```java
private static int partition(Comparable[] a, int lo, int hi) {
@@ -697,7 +697,7 @@ private static int partition(Comparable[] a, int lo, int hi) {
三向切分快速排序对于只有若干不同主键的随机数组可以在线性时间内完成排序。
-
+
```java
public class Quick3Way {
@@ -727,7 +727,7 @@ public class Quick3Way {
堆可以用数组来表示,因为堆是一种完全二叉树,而完全二叉树很容易就存储在数组中。位置 k 的节点的父节点位置为 k/2,而它的两个子节点的位置分别为 2k 和 2k+1。这里我们不使用数组索引为 0 的位置,是为了更清晰地理解节点的关系。
-
+
```java
public class MaxPQ {
@@ -818,7 +818,7 @@ public Key delMax() {
无序数组建立堆最直接的方法是从左到右遍历数组,然后进行上浮操作。一个更高效的方法是从右至左进行下沉操作,如果一个节点的两个节点都已经是堆有序,那么进行下沉操作可以使得这个节点为根节点的堆有序。叶子节点不需要进行下沉操作,因此可以忽略叶子节点的元素,因此只需要遍历一半的元素即可。
-
+
```java
public static void sort(Comparable[] a){
@@ -847,7 +847,7 @@ public static void sort(Comparable[] a){
### 1. 排序算法的比较
-
+
快速排序时最快的通用排序算法,它的内循环的指令很少,而且它还能利用缓存,因为它总是顺序地访问数据。它的运行时间增长数量级为 \~cNlogN,这里的 c 比其他线性对数级别的排序算法都要小。使用三向切分之后,实际应用中可能出现的某些分布的输入能够达到线性级别,而其它排序算法仍然需要线性对数时间。
@@ -878,7 +878,7 @@ public static Comparable select(Comparable[] a, int k) {
# 五、查找
-符号表示一种存储键值对的数据结构,支持两种操作:插入一个新的键值对;根据给定键得到值。
+符号表是一种存储键值对的数据结构,支持两种操作:插入一个新的键值对;根据给定键得到值。
## 符号表
@@ -967,12 +967,11 @@ public class BinarySearchST, Value> {
**二叉查找树** (BST)是一颗二叉树,并且每个节点的值都大于其左子树中的所有节点的值而小于右子树的所有节点的值。
-
+
BST 有一个重要性质,就是它的前序遍历结果递增排序。
-
-
+
基本数据结构:
@@ -1030,7 +1029,7 @@ private Value get(Node x, Key key) {
当插入的键不存在于树中,需要创建一个新节点,并且更新上层节点的链接使得该节点正确链接到树中。
-
+
```java
public void put(Key key, Value val) {
@@ -1051,7 +1050,7 @@ private Node put(Node x, Key key, Value val) {
二叉查找树的算法运行时间取决于树的形状,而树的形状又取决于键被插入的先后顺序。最好的情况下树是完全平衡的,每条空链接和根节点的距离都为 logN。在最坏的情况下,树的高度为 N。
-
+
### 4. floor()
@@ -1060,7 +1059,7 @@ floor(key):小于等于键的最大键
- 如果键小于根节点的键,那么 floor(key) 一定在左子树中;
- 如果键大于根节点的键,需要先判断右子树中是否存在 floor(key),如果存在就找到,否则根节点就是 floor(key)。
-
+
```java
public Key floor(Key key) {
@@ -1135,7 +1134,7 @@ public Node deleteMin(Node x) {
- 如果待删除的节点只有一个子树,那么只需要让指向待删除节点的链接指向唯一的子树即可;
- 否则,让右子树的最小节点替换该节点。
-
+
```java
public void delete(Key key) {
@@ -1209,7 +1208,7 @@ private void keys(Node x, Queue queue, Key lo, Key hi) {
2-3 查找树的查找和插入操作复杂度和插入顺序无关,在最坏的情况下查找和插入操作访问的节点必然不超过 logN 个,含有 10 亿个节点的 2-3 查找树最多只需要访问 30 个节点就能进行任意的查找和插入操作。
-
+
## 红黑二叉查找树
@@ -1224,7 +1223,7 @@ private void keys(Node x, Queue queue, Key lo, Key hi) {
画红黑树时可以将红链接画平。
-
+
```java
public class RedBlackBST, Value> {
@@ -1258,9 +1257,9 @@ public class RedBlackBST, Value> {
因为合法的红链接都为左链接,如果出现右链接为红链接,那么就需要进行左旋转操作。
-
+
-
+
```java
public Node rotateLeft(Node h) {
@@ -1279,9 +1278,9 @@ public Node rotateLeft(Node h) {
进行右旋转是为了转换两个连续的左红链接,这会在之后的插入过程中探讨。
-
+
-
+
```java
public Node rotateRight(Node h) {
@@ -1299,9 +1298,9 @@ public Node rotateRight(Node h) {
一个 4- 节点在红黑树中表现为一个节点的左右子节点都是红色的。分裂 4- 节点除了需要将子节点的颜色由红变黑之外,同时需要将父节点的颜色由黑变红,从 2-3 树的角度看就是将中间节点移到上层节点。
-
+
-
+
```java
void flipColors(Node h){
@@ -1316,10 +1315,10 @@ void flipColors(Node h){
先将一个节点按二叉查找树的方法插入到正确位置,然后再进行如下颜色操作:
- 如果右子节点是红色的而左子节点是黑色的,进行左旋转;
-- 如果左子节点是红色的且它的左子节点也是红色的,进行右旋转;
+- 如果左子节点是红色的,而且左子节点的左子节点也是红色的,进行右旋转;
- 如果左右子节点均为红色的,进行颜色转换。
-
+
```java
public void put(Key key, Value val) {
@@ -1349,27 +1348,29 @@ private Node put(Node x, Key key, Value val) {
### 5. 删除最小键
-如果最小键在一个 2- 节点中,那么删除该键会留下一个空链接,就破坏了平衡性,因此要确保最小键不在 2- 节点中。将 2- 节点转换成 3- 节点或者 4- 节点有两种方法,一种是向上层节点拿一个 key,一种是向兄弟节点拿一个 key。如果上层节点是 2- 节点,那么就没办法从上层节点拿 key 了,因此要保证删除路径上的所有节点都不是 2- 节点。在向下删除的过程中,保证以下情况之一发生:
+如果最小键在一个 2- 节点中,那么删除该键会留下一个空链接,就破坏了平衡性,因此要确保最小键不在 2- 节点中。
+
+将 2- 节点转换成 3- 节点或者 4- 节点有两种方法,一种是向上层节点拿一个 key,一种是向兄弟节点拿一个 key。如果上层节点是 2- 节点,那么就没办法从上层节点拿 key 了,因此要保证删除路径上的所有节点都不是 2- 节点。在向下删除的过程中,保证以下情况之一发生:
1. 如果当前节点的左子节点不是 2- 节点,完成;
2. 如果当前节点的左子节点是 2- 节点而它的兄弟节点不是 2- 节点,向兄弟节点拿一个 key 过来;
3. 如果当前节点的左子节点和它的兄弟节点都是 2- 节点,将左子节点、父节点中的最小键和最近的兄弟节点合并为一个 4- 节点。
-
+
最后得到一个含有最小键的 3- 节点或者 4- 节点,直接从中删除。然后再从头分解所有临时的 4- 节点。
-
+
### 6. 分析
-一颗大小为 N 的红黑树的高度不会超过 2logN。最坏的情况下是它所对应的 2-3 树中构成最左边的路径节点全部都是 3- 节点而其余都是 2- 节点。
+一颗大小为 N 的红黑树的高度不会超过 2logN。最坏的情况下是它所对应的 2-3 树,构成最左边的路径节点全部都是 3- 节点而其余都是 2- 节点。
红黑树大多数的操作所需要的时间都是对数级别的。
## 散列表
-散列表类似于数组,可以把散列表的散列值看成数组的索引值。访问散列表和访问数组元素一样快速,它可以在常数时间内实现查找和插入的符号表。
+散列表类似于数组,可以把散列表的散列值看成数组的索引值。访问散列表和访问数组元素一样快速,它可以在常数时间内实现查找和插入操作。
由于无法通过散列值知道键的大小关系,因此散列表无法实现有序性操作。
@@ -1399,13 +1400,13 @@ for(int i = 0; i < s.length(); i++)
hash = (R * hash + s.charAt(i)) % M;
```
-再比如,拥有多个成员的自定义类的哈希函数如下
+再比如,拥有多个成员的自定义类的哈希函数如下:
```java
int hash = (((day * R + month) % M) * R + year) % M;
```
-R 的值不是很重要,通常取 31。
+R 通常取 31。
Java 中的 hashCode() 实现了 hash 函数,但是默认使用对象的内存地址值。在使用 hashCode() 函数时,应当结合除留余数法来使用。因为内存地址是 32 位整数,我们只需要 31 位的非负整数,因此应当屏蔽符号位之后再使用除留余数法。
@@ -1435,7 +1436,7 @@ public class Transaction{
拉链法使用链表来存储 hash 值相同的键,从而解决冲突。此时查找需要分两步,首先查找 Key 所在的链表,然后在链表中顺序查找。
-
+
对于 N 个键,M 条链表 (N>M),如果哈希函数能够满足均匀性的条件,每条链表的大小趋向于 N/M,因此未命中的查找和插入操作所需要的比较次数为 \~N/M。
@@ -1443,7 +1444,7 @@ public class Transaction{
线性探测法使用空位来解决冲突,当冲突发生时,向前探测一个空位来存储冲突的键。使用线程探测法,数组的大小 M 应当大于键的个数 N(M>N)。
-
+
```java
public class LinearProbingHashST {
@@ -1472,7 +1473,7 @@ public class LinearProbingHashST {
}
```
-#### 3.1 查找
+**(一)查找**
```java
public Value get(Key key) {
@@ -1485,7 +1486,7 @@ public Value get(Key key) {
}
```
-#### 3.2 插入
+**(二)插入**
```java
public void put(Key key, Value val) {
@@ -1503,9 +1504,9 @@ public void put(Key key, Value val) {
}
```
-#### 3.3 删除
+**(三)删除**
-删除操作应当将右侧所有相邻的键值重新插入散列表中。
+删除操作应当将右侧所有相邻的键值对重新插入散列表中。
```java
public void delete(Key key) {
@@ -1531,13 +1532,13 @@ public void delete(Key key) {
}
```
-#### 3.4 调整数组大小
+**(四)调整数组大小**
线性探测法的成本取决于连续条目的长度,连续条目也叫聚簇。当聚簇很长时,在查找和插入时也需要进行很多次探测。
α = N/M,把 α 称为利用率。理论证明,当 α 小于 1/2 时探测的预计次数只在 1.5 到 2.5 之间。
-
+
为了保证散列表的性能,应当调整数组的大小,使得 α 在 [1/4, 1/2] 之间。
@@ -1562,13 +1563,13 @@ private void resize(int cap) {
虽然每次重新调整数组都需要重新把每个键值对插入到散列表,但是从摊还分析的角度来看,所需要的代价却是很小的。从下图可以看出,每次数组长度加倍后,累计平均值都会增加 1,因为表中每个键都需要重新计算散列值,但是随后平均值会下降。
-
+
## 应用
### 1. 各种符号表实现的比较
-
+
应当优先考虑散列表,当需要有序性操作时使用红黑树。
diff --git a/pics/04662fa2-d19b-4de3-a829-50acb7af75d7.png b/pics/04662fa2-d19b-4de3-a829-50acb7af75d7.png
new file mode 100644
index 0000000000000000000000000000000000000000..18c04f3b2865cb8ad1f576a5ac34e4390bfb184f
GIT binary patch
literal 59392
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
}HLkR1ly=5uu@
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≠XuPHGG`V
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