From 089dfb1d86c4f369ef4af3e2ad6352904a40d3e6 Mon Sep 17 00:00:00 2001 From: CyC2018 <1029579233@qq.com> Date: Wed, 18 Apr 2018 13:46:04 +0800 Subject: [PATCH] auto commit --- notes/Java 基础.md | 38 +++++++++--------- notes/Java 并发.md | 2 +- notes/Leetcode 题解.md | 2 +- notes/Linux.md | 11 ++--- notes/剑指 offer 题解.md | 14 ++++--- notes/算法.md | 2 +- pics/1a231f2a-5c2f-4231-8e0f-915aa5894347.jpg | Bin 0 -> 27648 bytes 7 files changed, 32 insertions(+), 37 deletions(-) create mode 100644 pics/1a231f2a-5c2f-4231-8e0f-915aa5894347.jpg diff --git a/notes/Java 基础.md b/notes/Java 基础.md index 06100520..ed94785c 100644 --- a/notes/Java 基础.md +++ b/notes/Java 基础.md @@ -65,7 +65,7 @@ private 方法隐式地被指定为 final,如果在子类中定义的方法和 **1. 静态变量** -静态变量在内存中只存在一份,只在类第一次实例化时初始化一次。 +静态变量在内存中只存在一份,只在类初始化时赋值一次。 - 静态变量:类所有的实例都共享静态变量,可以直接通过类名来访问它; - 实例变量:每创建一个实例就会产生一个实例变量,它与该实例同生共死。 @@ -83,11 +83,23 @@ public class A { **3. 静态语句块** -静态语句块和静态变量一样在类第一次实例化时运行一次。 +静态语句块在类初始化时运行一次。 -**4. 初始化顺序** +**4. 静态内部类** -静态数据优先于其它数据的初始化,静态变量和静态语句块哪个先运行取决于它们在代码中的顺序。 +内部类的一种,静态内部类不依赖外部类,且不能访问外部类的非 static 变量和方法。 + +**5. 静态导包** + +```source-java +import static com.xxx.ClassName.* +``` + +在使用静态变量和方法时不用再指明 ClassName,从而简化代码,但可读性大大降低。 + +**6. 变量赋值顺序** + +静态变量的赋值和静态语句块的运行优先于实例变量的赋值和普通语句块的运行,静态变量的赋值和静态语句块的运行哪个先执行取决于它们在代码中的顺序。 ```java public static String staticField = "静态变量"; @@ -99,8 +111,6 @@ static { } ``` -实例变量和普通语句块的初始化在静态变量和静态语句块初始化结束之后。 - ```java public String field = "实例变量"; ``` @@ -111,7 +121,7 @@ public String field = "实例变量"; } ``` -最后才是构造函数中的数据进行初始化 +最后才运行构造函数 ```java public InitialOrderTest() { @@ -121,25 +131,13 @@ public InitialOrderTest() { 存在继承的情况下,初始化顺序为: -1. 父类(静态变量、静态语句块块) +1. 父类(静态变量、静态语句块) 2. 子类(静态变量、静态语句块) 3. 父类(实例变量、普通语句块) 4. 父类(构造函数) 5. 子类(实例变量、普通语句块) 6. 子类(构造函数) -**5. 静态内部类** - -内部类的一种,静态内部类不依赖外部类,且不能访问外部类的非 static 变量和方法。 - -**6. 静态导包** - -```source-java -import static com.xxx.ClassName.* -``` - -在使用静态变量和方法时不用再指明 ClassName,从而简化代码,但可读性大大降低。 - # 二、Object 通用方法 ## 概览 diff --git a/notes/Java 并发.md b/notes/Java 并发.md index 40f0de20..edc9dc0f 100644 --- a/notes/Java 并发.md +++ b/notes/Java 并发.md @@ -192,7 +192,7 @@ Executor 管理多个异步任务的执行,而无需程序员显示地管理 主要有三种 Executor: -1. CachedTreadPool:一个任务创建一个线程; +1. CachedThreadPool:一个任务创建一个线程; 2. FixedThreadPool:所有任务只能使用固定大小的线程; 3. SingleThreadExecutor:相当于大小为 1 的 FixedThreadPool。 diff --git a/notes/Leetcode 题解.md b/notes/Leetcode 题解.md index 0cee7066..73f19098 100644 --- a/notes/Leetcode 题解.md +++ b/notes/Leetcode 题解.md @@ -638,7 +638,7 @@ public int findKthLargest(int[] nums, int k) { } ``` -**堆排序** :时间复杂度 O(OlogK),空间复杂度 O(K)。 +**堆排序** :时间复杂度 O(NlogK),空间复杂度 O(K)。 ```java public int findKthLargest(int[] nums, int k) { diff --git a/notes/Linux.md b/notes/Linux.md index 6c38a0fb..135467a7 100644 --- a/notes/Linux.md +++ b/notes/Linux.md @@ -1150,7 +1150,8 @@ I/O Multiplexing 又被称为 Event Driven I/O,它可以让单个进程具有 同步异步是获知 I/O 完成的方式,同步需要时刻关心 I/O 是否已经完成,异步无需主动关心,在 I/O 完成时它会收到通知。 -

+

+ ### 1. 同步-阻塞 @@ -1168,13 +1169,7 @@ I/O Multiplexing 又被称为 Event Driven I/O,它可以让单个进程具有

-### 3. 异步-阻塞 - -这是 I/O 复用使用的一种模式,通过使用 select,它可以监听多个 I/O 事件,当这些事件至少有一个发生时,用户程序会收到通知。 - -

- -### 4. 异步-非阻塞 +### 3. 异步 该模式下,I/O 操作会立即返回,之后可以处理其它操作,并且在 I/O 完成时会收到一个通知,此时会中断正在处理的操作,然后继续之前的操作。 diff --git a/notes/剑指 offer 题解.md b/notes/剑指 offer 题解.md index 4a6c375c..4f6bd9ad 100644 --- a/notes/剑指 offer 题解.md +++ b/notes/剑指 offer 题解.md @@ -98,16 +98,18 @@ 以 (2, 3, 1, 0, 2, 5) 为例: -```html +```text-html-basic position-0 : (2,3,1,0,2,5) // 2 <-> 1 (1,3,2,0,2,5) // 1 <-> 3 - (3,1,1,0,2,5) // 3 <-> 0 - (0,1,1,3,2,5) // already in position -position-1 : (0,1,1,3,2,5) // already in position -position-2 : (0,1,1,3,2,5) // nums[i] == nums[nums[i]], exit + (3,1,2,0,2,5) // 3 <-> 0 + (0,1,2,3,2,5) // already in position +position-1 : (0,1,2,3,2,5) // already in position +position-2 : (0,1,2,3,2,5) // already in position +position-3 : (0,1,2,3,2,5) // already in position +position-4 : (0,1,2,3,2,5) // nums[i] == nums[nums[i]], exit ``` -遍历到位置 2 时,该位置上的数为 1,但是第 1 个位置上已经有一个 1 的值了,因此可以知道 1 重复。 +遍历到位置 4 时,该位置上的数为 2,但是第 2 个位置上已经有一个 2 的值了,因此可以知道 2 重复。 复杂度:O(N) + O(1) diff --git a/notes/算法.md b/notes/算法.md index 997dc245..b6faef12 100644 --- a/notes/算法.md +++ b/notes/算法.md @@ -581,7 +581,7 @@ public class MergeSort { for (int k = lo; k <= hi; k++) { if (i > mid) a[k] = aux[j++]; else if (j > hi) a[k] = aux[i++]; - else if (aux[i].compareTo(a[j]) < 0) a[k] = aux[i++]; // 先进行这一步,保证稳定性 + else if (aux[i].compareTo(a[j]) <= 0) a[k] = aux[i++]; // 先进行这一步,保证稳定性 else a[k] = aux[j++]; } } diff --git a/pics/1a231f2a-5c2f-4231-8e0f-915aa5894347.jpg b/pics/1a231f2a-5c2f-4231-8e0f-915aa5894347.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f43e0f25000103cbc99f142d330b3d373019c6c7 GIT binary patch literal 27648 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 literal 0 HcmV?d00001