From 988e86fd3ad30188de78ee861beaff662221574e Mon Sep 17 00:00:00 2001 From: professorxin <1252778220@qq.com> Date: Tue, 17 Sep 2019 13:46:39 +0800 Subject: [PATCH 1/9] =?UTF-8?q?=E4=BF=AE=E6=AD=A3Leetcode=E9=A2=98?= =?UTF-8?q?=E8=A7=A3=E7=9A=84=E4=BD=8D=E8=BF=90=E7=AE=97=E5=9F=BA=E6=9C=AC?= =?UTF-8?q?=E5=8E=9F=E7=90=86=E9=83=A8=E5=88=86=E7=9A=84=E6=8F=8F=E8=BF=B0?= =?UTF-8?q?=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- notes/Leetcode 题解 - 位运算.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/notes/Leetcode 题解 - 位运算.md b/notes/Leetcode 题解 - 位运算.md index d4c659b7..a89999ad 100644 --- a/notes/Leetcode 题解 - 位运算.md +++ b/notes/Leetcode 题解 - 位运算.md @@ -47,9 +47,9 @@ x ^ x = 0 x & x = x x | x = x 要得到只有第 i 位为 1 的 mask,将 1 向左移动 i-1 位即可,1<<(i-1) 。例如 1<<4 得到只有第 5 位为 1 的 mask :00010000。 -要得到 1 到 i 位为 1 的 mask,1<<(i+1)-1 即可,例如将 1<<(4+1)-1 = 00010000-1 = 00001111。 +要得到 1 到 i 位为 1 的 mask,(1<<i)-1 即可,例如将 (1<<4)-1 = 00010000-1 = 00001111。 -要得到 1 到 i 位为 0 的 mask,只需将 1 到 i 位为 1 的 mask 取反,即 \~(1<<(i+1)-1)。 +要得到 1 到 i 位为 0 的 mask,只需将 1 到 i 位为 1 的 mask 取反,即 \~((1<<i)-1)。 **Java 中的位操作** From 69d34190627c037999bc37ecbbfae5a878fde7ef Mon Sep 17 00:00:00 2001 From: CyC2018 Date: Thu, 17 Oct 2019 01:13:12 +0800 Subject: [PATCH 2/9] auto commit --- docs/notes/Leetcode 题解 - 动态规划.md | 6 ++++-- .../ffd96b99-8009-487c-8e98-11c9d44ef14f.png | Bin 0 -> 24454 bytes notes/Leetcode 题解 - 动态规划.md | 3 +-- .../ffd96b99-8009-487c-8e98-11c9d44ef14f.png | Bin 0 -> 24454 bytes 4 files changed, 5 insertions(+), 4 deletions(-) create mode 100644 docs/pics/ffd96b99-8009-487c-8e98-11c9d44ef14f.png create mode 100644 notes/pics/ffd96b99-8009-487c-8e98-11c9d44ef14f.png diff --git a/docs/notes/Leetcode 题解 - 动态规划.md b/docs/notes/Leetcode 题解 - 动态规划.md index 6cf5449b..c556ee0f 100644 --- a/docs/notes/Leetcode 题解 - 动态规划.md +++ b/docs/notes/Leetcode 题解 - 动态规划.md @@ -902,6 +902,9 @@ Explanation: there are four ways to make up the amount: ```java public int change(int amount, int[] coins) { + if (amount == 0 || coins == null || coins.length == 0) { + return 0; + } int[] dp = new int[amount + 1]; dp[0] = 1; for (int coin : coins) { @@ -999,8 +1002,7 @@ public int combinationSum4(int[] nums, int target) { 题目描述:交易之后需要有一天的冷却时间。 -

- +

```java public int maxProfit(int[] prices) { diff --git a/docs/pics/ffd96b99-8009-487c-8e98-11c9d44ef14f.png b/docs/pics/ffd96b99-8009-487c-8e98-11c9d44ef14f.png new file mode 100644 index 0000000000000000000000000000000000000000..b01c1ca0e8f921f79d13747e16a43ee6ff98a843 GIT binary patch literal 24454 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 z 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 YP8#Fo`lzlNz|KFSt8J)Np=lHGKNE;7S^xk5 literal 0 HcmV?d00001 diff --git a/notes/Leetcode 题解 - 动态规划.md b/notes/Leetcode 题解 - 动态规划.md index 1b36b521..a0a50a4a 100644 --- a/notes/Leetcode 题解 - 动态规划.md +++ b/notes/Leetcode 题解 - 动态规划.md @@ -1002,8 +1002,7 @@ public int combinationSum4(int[] nums, int target) { 题目描述:交易之后需要有一天的冷却时间。 -

- +

```java public int maxProfit(int[] prices) { diff --git a/notes/pics/ffd96b99-8009-487c-8e98-11c9d44ef14f.png b/notes/pics/ffd96b99-8009-487c-8e98-11c9d44ef14f.png new file mode 100644 index 0000000000000000000000000000000000000000..b01c1ca0e8f921f79d13747e16a43ee6ff98a843 GIT binary patch literal 24454 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 z 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 YP8#Fo`lzlNz|KFSt8J)Np=lHGKNE;7S^xk5 literal 0 HcmV?d00001 From cead11206b73272a77e1c62eda6f4ff7eca45db3 Mon Sep 17 00:00:00 2001 From: CyC2018 Date: Thu, 17 Oct 2019 01:31:39 +0800 Subject: [PATCH 3/9] auto commit --- docs/notes/Java 基础.md | 1 - notes/Java 基础.md | 1 - 2 files changed, 2 deletions(-) diff --git a/docs/notes/Java 基础.md b/docs/notes/Java 基础.md index 409c1e75..e81b46a7 100644 --- a/docs/notes/Java 基础.md +++ b/docs/notes/Java 基础.md @@ -1420,7 +1420,6 @@ Java 注解是附加在代码中的一些元信息,用于一些工具在编译 - Java 不支持多重继承,只能通过实现多个接口来达到相同目的,而 C++ 支持多重继承。 - Java 不支持操作符重载,虽然可以对两个 String 对象执行加法运算,但是这是语言内置支持的操作,不属于操作符重载,而 C++ 可以。 - Java 的 goto 是保留字,但是不可用,C++ 可以使用 goto。 -- Java 不支持条件编译,C++ 通过 #ifdef #ifndef 等预处理命令从而实现条件编译。 [What are the main differences between Java and C++?](http://cs-fundamentals.com/tech-interview/java/differences-between-java-and-cpp.php) diff --git a/notes/Java 基础.md b/notes/Java 基础.md index dc943c68..4198ac4d 100644 --- a/notes/Java 基础.md +++ b/notes/Java 基础.md @@ -1420,7 +1420,6 @@ Java 注解是附加在代码中的一些元信息,用于一些工具在编译 - Java 不支持多重继承,只能通过实现多个接口来达到相同目的,而 C++ 支持多重继承。 - Java 不支持操作符重载,虽然可以对两个 String 对象执行加法运算,但是这是语言内置支持的操作,不属于操作符重载,而 C++ 可以。 - Java 的 goto 是保留字,但是不可用,C++ 可以使用 goto。 -- Java 不支持条件编译,C++ 通过 #ifdef #ifndef 等预处理命令从而实现条件编译。 [What are the main differences between Java and C++?](http://cs-fundamentals.com/tech-interview/java/differences-between-java-and-cpp.php) From 092fef5d608ff3a22078890223be55665cba1948 Mon Sep 17 00:00:00 2001 From: CyC2018 Date: Thu, 17 Oct 2019 01:34:50 +0800 Subject: [PATCH 4/9] auto commit --- docs/notes/Leetcode 题解 - 动态规划.md | 18 ++++++++++-------- notes/Leetcode 题解 - 动态规划.md | 18 ++++++++++-------- 2 files changed, 20 insertions(+), 16 deletions(-) diff --git a/docs/notes/Leetcode 题解 - 动态规划.md b/docs/notes/Leetcode 题解 - 动态规划.md index c556ee0f..fd51bf13 100644 --- a/docs/notes/Leetcode 题解 - 动态规划.md +++ b/docs/notes/Leetcode 题解 - 动态规划.md @@ -869,18 +869,20 @@ return -1. ```java public int coinChange(int[] coins, int amount) { -public int change(int amount, int[] coins) { - if (coins == null) { - return 0; - } int[] dp = new int[amount + 1]; - dp[0] = 1; for (int coin : coins) { - for (int i = coin; i <= amount; i++) { - dp[i] += dp[i - coin]; + for (int i = coin; i <= amount; i++) { //将逆序遍历改为正序遍历 + if (i == coin) { + dp[i] = 1; + } else if (dp[i] == 0 && dp[i - coin] != 0) { + dp[i] = dp[i - coin] + 1; + + } else if (dp[i - coin] != 0) { + dp[i] = Math.min(dp[i], dp[i - coin] + 1); + } } } - return dp[amount]; + return dp[amount] == 0 ? -1 : dp[amount]; } ``` diff --git a/notes/Leetcode 题解 - 动态规划.md b/notes/Leetcode 题解 - 动态规划.md index a0a50a4a..c7c6b8ce 100644 --- a/notes/Leetcode 题解 - 动态规划.md +++ b/notes/Leetcode 题解 - 动态规划.md @@ -869,18 +869,20 @@ return -1. ```java public int coinChange(int[] coins, int amount) { -public int change(int amount, int[] coins) { - if (coins == null) { - return 0; - } int[] dp = new int[amount + 1]; - dp[0] = 1; for (int coin : coins) { - for (int i = coin; i <= amount; i++) { - dp[i] += dp[i - coin]; + for (int i = coin; i <= amount; i++) { //将逆序遍历改为正序遍历 + if (i == coin) { + dp[i] = 1; + } else if (dp[i] == 0 && dp[i - coin] != 0) { + dp[i] = dp[i - coin] + 1; + + } else if (dp[i - coin] != 0) { + dp[i] = Math.min(dp[i], dp[i - coin] + 1); + } } } - return dp[amount]; + return dp[amount] == 0 ? -1 : dp[amount]; } ``` From 63b4122c46247e88cd914c9a2a24be6893cacca5 Mon Sep 17 00:00:00 2001 From: CyC2018 Date: Thu, 17 Oct 2019 01:39:44 +0800 Subject: [PATCH 5/9] auto commit --- docs/notes/剑指 Offer 题解 - 10~19.md | 2 +- notes/剑指 Offer 题解 - 10~19.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/notes/剑指 Offer 题解 - 10~19.md b/docs/notes/剑指 Offer 题解 - 10~19.md index 458af00e..e5d65231 100644 --- a/docs/notes/剑指 Offer 题解 - 10~19.md +++ b/docs/notes/剑指 Offer 题解 - 10~19.md @@ -154,7 +154,7 @@ public int JumpFloor(int n) { if (n <= 2) return n; int pre2 = 1, pre1 = 2; - int result = 1; + int result = 0; for (int i = 2; i < n; i++) { result = pre2 + pre1; pre2 = pre1; diff --git a/notes/剑指 Offer 题解 - 10~19.md b/notes/剑指 Offer 题解 - 10~19.md index 57c4cd70..1a05a88a 100644 --- a/notes/剑指 Offer 题解 - 10~19.md +++ b/notes/剑指 Offer 题解 - 10~19.md @@ -154,7 +154,7 @@ public int JumpFloor(int n) { if (n <= 2) return n; int pre2 = 1, pre1 = 2; - int result = 1; + int result = 0; for (int i = 2; i < n; i++) { result = pre2 + pre1; pre2 = pre1; From cac408908ff63ad4c425b59d198bac588bd0ecb4 Mon Sep 17 00:00:00 2001 From: CyC2018 Date: Thu, 17 Oct 2019 01:58:26 +0800 Subject: [PATCH 6/9] auto commit --- docs/notes/Leetcode 题解 - 搜索.md | 18 ++++++++++-------- notes/Leetcode 题解 - 搜索.md | 18 ++++++++++-------- 2 files changed, 20 insertions(+), 16 deletions(-) diff --git a/docs/notes/Leetcode 题解 - 搜索.md b/docs/notes/Leetcode 题解 - 搜索.md index 4fd9504b..2e0729e9 100644 --- a/docs/notes/Leetcode 题解 - 搜索.md +++ b/docs/notes/Leetcode 题解 - 搜索.md @@ -61,6 +61,8 @@ ## 1. 计算在网格中从原点到特定点的最短路径长度 +[1091. Shortest Path in Binary Matrix(Medium)](https://leetcode.com/problems/shortest-path-in-binary-matrix/) + ```html [[1,1,0,1], [1,0,1,0], @@ -68,12 +70,12 @@ [1,0,1,1]] ``` -题目描述:1 表示可以经过某个位置,求解从 (0, 0) 位置到 (tr, tc) 位置的最短路径长度。 +题目描述:0 表示可以经过某个位置,求解从左上角到右下角的最短路径长度。 ```java -public int minPathLength(int[][] grids, int tr, int tc) { - final int[][] direction = {{1, 0}, {-1, 0}, {0, 1}, {0, -1}}; - final int m = grids.length, n = grids[0].length; +public int shortestPathBinaryMatrix(int[][] grids) { + int[][] direction = {{1, -1}, {1, 0}, {1, 1}, {0, -1}, {0, 1}, {-1, -1}, {-1, 0}, {-1, 1}}; + int m = grids.length, n = grids[0].length; Queue> queue = new LinkedList<>(); queue.add(new Pair<>(0, 0)); int pathLength = 0; @@ -83,14 +85,14 @@ public int minPathLength(int[][] grids, int tr, int tc) { while (size-- > 0) { Pair cur = queue.poll(); int cr = cur.getKey(), cc = cur.getValue(); - grids[cr][cc] = 0; // 标记 + grids[cr][cc] = 1; // 标记 for (int[] d : direction) { int nr = cr + d[0], nc = cc + d[1]; - if (nr < 0 || nr >= m || nc < 0 || nc >= n || grids[nr][nc] == 0) { + if (nr < 0 || nr >= m || nc < 0 || nc >= n || grids[nr][nc] == 1) { continue; } - if (nr == tr && nc == tc) { - return pathLength; + if (nr == m - 1 && nc == n - 1) { + return pathLength + 1; } queue.add(new Pair<>(nr, nc)); } diff --git a/notes/Leetcode 题解 - 搜索.md b/notes/Leetcode 题解 - 搜索.md index 0437af64..38945d90 100644 --- a/notes/Leetcode 题解 - 搜索.md +++ b/notes/Leetcode 题解 - 搜索.md @@ -61,6 +61,8 @@ ## 1. 计算在网格中从原点到特定点的最短路径长度 +[1091. Shortest Path in Binary Matrix(Medium)](https://leetcode.com/problems/shortest-path-in-binary-matrix/) + ```html [[1,1,0,1], [1,0,1,0], @@ -68,12 +70,12 @@ [1,0,1,1]] ``` -题目描述:1 表示可以经过某个位置,求解从 (0, 0) 位置到 (tr, tc) 位置的最短路径长度。 +题目描述:0 表示可以经过某个位置,求解从左上角到右下角的最短路径长度。 ```java -public int minPathLength(int[][] grids, int tr, int tc) { - final int[][] direction = {{1, 0}, {-1, 0}, {0, 1}, {0, -1}}; - final int m = grids.length, n = grids[0].length; +public int shortestPathBinaryMatrix(int[][] grids) { + int[][] direction = {{1, -1}, {1, 0}, {1, 1}, {0, -1}, {0, 1}, {-1, -1}, {-1, 0}, {-1, 1}}; + int m = grids.length, n = grids[0].length; Queue> queue = new LinkedList<>(); queue.add(new Pair<>(0, 0)); int pathLength = 0; @@ -83,14 +85,14 @@ public int minPathLength(int[][] grids, int tr, int tc) { while (size-- > 0) { Pair cur = queue.poll(); int cr = cur.getKey(), cc = cur.getValue(); - grids[cr][cc] = 0; // 标记 + grids[cr][cc] = 1; // 标记 for (int[] d : direction) { int nr = cr + d[0], nc = cc + d[1]; - if (nr < 0 || nr >= m || nc < 0 || nc >= n || grids[nr][nc] == 0) { + if (nr < 0 || nr >= m || nc < 0 || nc >= n || grids[nr][nc] == 1) { continue; } - if (nr == tr && nc == tc) { - return pathLength; + if (nr == m - 1 && nc == n - 1) { + return pathLength + 1; } queue.add(new Pair<>(nr, nc)); } From 4b95034db3becf10818e0aed77d57304e8bcd7c6 Mon Sep 17 00:00:00 2001 From: CyC2018 Date: Thu, 17 Oct 2019 02:06:42 +0800 Subject: [PATCH 7/9] auto commit --- docs/notes/Leetcode 题解 - 位运算.md | 4 ++-- notes/Leetcode 题解 - 位运算.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/notes/Leetcode 题解 - 位运算.md b/docs/notes/Leetcode 题解 - 位运算.md index d4c659b7..a89999ad 100644 --- a/docs/notes/Leetcode 题解 - 位运算.md +++ b/docs/notes/Leetcode 题解 - 位运算.md @@ -47,9 +47,9 @@ x ^ x = 0 x & x = x x | x = x 要得到只有第 i 位为 1 的 mask,将 1 向左移动 i-1 位即可,1<<(i-1) 。例如 1<<4 得到只有第 5 位为 1 的 mask :00010000。 -要得到 1 到 i 位为 1 的 mask,1<<(i+1)-1 即可,例如将 1<<(4+1)-1 = 00010000-1 = 00001111。 +要得到 1 到 i 位为 1 的 mask,(1<<i)-1 即可,例如将 (1<<4)-1 = 00010000-1 = 00001111。 -要得到 1 到 i 位为 0 的 mask,只需将 1 到 i 位为 1 的 mask 取反,即 \~(1<<(i+1)-1)。 +要得到 1 到 i 位为 0 的 mask,只需将 1 到 i 位为 1 的 mask 取反,即 \~((1<<i)-1)。 **Java 中的位操作** diff --git a/notes/Leetcode 题解 - 位运算.md b/notes/Leetcode 题解 - 位运算.md index d4c659b7..a89999ad 100644 --- a/notes/Leetcode 题解 - 位运算.md +++ b/notes/Leetcode 题解 - 位运算.md @@ -47,9 +47,9 @@ x ^ x = 0 x & x = x x | x = x 要得到只有第 i 位为 1 的 mask,将 1 向左移动 i-1 位即可,1<<(i-1) 。例如 1<<4 得到只有第 5 位为 1 的 mask :00010000。 -要得到 1 到 i 位为 1 的 mask,1<<(i+1)-1 即可,例如将 1<<(4+1)-1 = 00010000-1 = 00001111。 +要得到 1 到 i 位为 1 的 mask,(1<<i)-1 即可,例如将 (1<<4)-1 = 00010000-1 = 00001111。 -要得到 1 到 i 位为 0 的 mask,只需将 1 到 i 位为 1 的 mask 取反,即 \~(1<<(i+1)-1)。 +要得到 1 到 i 位为 0 的 mask,只需将 1 到 i 位为 1 的 mask 取反,即 \~((1<<i)-1)。 **Java 中的位操作** From dec684a9a66a198182706e67d30caa28b8436b2a Mon Sep 17 00:00:00 2001 From: CyC2018 Date: Thu, 17 Oct 2019 02:15:15 +0800 Subject: [PATCH 8/9] auto commit --- docs/notes/剑指 Offer 题解 - 10~19.md | 22 +++++++++++----------- docs/notes/剑指 Offer 题解 - 20~29.md | 20 ++++++++++---------- docs/notes/剑指 Offer 题解 - 30~39.md | 24 ++++++++++++------------ docs/notes/剑指 Offer 题解 - 3~9.md | 14 +++++++------- docs/notes/剑指 Offer 题解 - 40~49.md | 14 +++++++------- docs/notes/剑指 Offer 题解 - 50~59.md | 26 +++++++++++++------------- docs/notes/剑指 Offer 题解 - 60~68.md | 12 ++++++------ notes/剑指 Offer 题解 - 10~19.md | 22 +++++++++++----------- notes/剑指 Offer 题解 - 20~29.md | 20 ++++++++++---------- notes/剑指 Offer 题解 - 30~39.md | 24 ++++++++++++------------ notes/剑指 Offer 题解 - 3~9.md | 14 +++++++------- notes/剑指 Offer 题解 - 40~49.md | 14 +++++++------- notes/剑指 Offer 题解 - 50~59.md | 26 +++++++++++++------------- notes/剑指 Offer 题解 - 60~68.md | 12 ++++++------ 14 files changed, 132 insertions(+), 132 deletions(-) diff --git a/docs/notes/剑指 Offer 题解 - 10~19.md b/docs/notes/剑指 Offer 题解 - 10~19.md index e5d65231..7f1848ba 100644 --- a/docs/notes/剑指 Offer 题解 - 10~19.md +++ b/docs/notes/剑指 Offer 题解 - 10~19.md @@ -18,7 +18,7 @@ # 10.1 斐波那契数列 -[NowCoder](https://www.nowcoder.com/practice/c6c7742f5ba7442aada113136ddea0c3?tpId=13&tqId=11160&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/c6c7742f5ba7442aada113136ddea0c3?tpId=13&tqId=11160&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -86,7 +86,7 @@ public class Solution { # 10.2 矩形覆盖 -[NowCoder](https://www.nowcoder.com/practice/72a5a919508a4251859fb2cfb987a0e6?tpId=13&tqId=11163&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/72a5a919508a4251859fb2cfb987a0e6?tpId=13&tqId=11163&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -127,7 +127,7 @@ public int RectCover(int n) { # 10.3 跳台阶 -[NowCoder](https://www.nowcoder.com/practice/8c82a5b80378478f9484d87d1c5f12a4?tpId=13&tqId=11161&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/8c82a5b80378478f9484d87d1c5f12a4?tpId=13&tqId=11161&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -166,7 +166,7 @@ public int JumpFloor(int n) { # 10.4 变态跳台阶 -[NowCoder](https://www.nowcoder.com/practice/22243d016f6b47f2a6928b4313c85387?tpId=13&tqId=11162&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/22243d016f6b47f2a6928b4313c85387?tpId=13&tqId=11162&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -226,7 +226,7 @@ public int JumpFloorII(int target) { # 11. 旋转数组的最小数字 -[NowCoder](https://www.nowcoder.com/practice/9f3231a991af4f55b95579b44b7a01ba?tpId=13&tqId=11159&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/9f3231a991af4f55b95579b44b7a01ba?tpId=13&tqId=11159&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -292,7 +292,7 @@ private int minNumber(int[] nums, int l, int h) { # 12. 矩阵中的路径 -[NowCoder](https://www.nowcoder.com/practice/c61c6999eecb4b8f88a98f66b273a3cc?tpId=13&tqId=11218&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/c61c6999eecb4b8f88a98f66b273a3cc?tpId=13&tqId=11218&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -357,7 +357,7 @@ private char[][] buildMatrix(char[] array) { # 13. 机器人的运动范围 -[NowCoder](https://www.nowcoder.com/practice/6e5207314b5241fb83f2329e89fdecc8?tpId=13&tqId=11219&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/6e5207314b5241fb83f2329e89fdecc8?tpId=13&tqId=11219&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -469,7 +469,7 @@ public int integerBreak(int n) { # 15. 二进制中 1 的个数 -[NowCoder](https://www.nowcoder.com/practice/8ee967e43c2c4ec193b040ea7fbb10b8?tpId=13&tqId=11164&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/8ee967e43c2c4ec193b040ea7fbb10b8?tpId=13&tqId=11164&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -510,7 +510,7 @@ public int NumberOf1(int n) { # 16. 数值的整数次方 -[NowCoder](https://www.nowcoder.com/practice/1a834e5e3e1a4b7ba251417554e07c00?tpId=13&tqId=11165&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/1a834e5e3e1a4b7ba251417554e07c00?tpId=13&tqId=11165&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -626,7 +626,7 @@ public ListNode deleteNode(ListNode head, ListNode tobeDelete) { # 18.2 删除链表中重复的结点 -[NowCoder](https://www.nowcoder.com/practice/fc533c45b73a41b0b44ccba763f866ef?tpId=13&tqId=11209&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/fc533c45b73a41b0b44ccba763f866ef?tpId=13&tqId=11209&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -652,7 +652,7 @@ public ListNode deleteDuplication(ListNode pHead) { # 19. 正则表达式匹配 -[NowCoder](https://www.nowcoder.com/practice/45327ae22b7b413ea21df13ee7d6429c?tpId=13&tqId=11205&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/45327ae22b7b413ea21df13ee7d6429c?tpId=13&tqId=11205&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 diff --git a/docs/notes/剑指 Offer 题解 - 20~29.md b/docs/notes/剑指 Offer 题解 - 20~29.md index 0bb8675c..c19b6f4c 100644 --- a/docs/notes/剑指 Offer 题解 - 20~29.md +++ b/docs/notes/剑指 Offer 题解 - 20~29.md @@ -14,7 +14,7 @@ # 20. 表示数值的字符串 -[NowCoder](https://www.nowcoder.com/practice/6f8c901d091949a5837e24bb82a731f2?tpId=13&tqId=11206&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/6f8c901d091949a5837e24bb82a731f2?tpId=13&tqId=11206&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -64,7 +64,7 @@ public boolean isNumeric(char[] str) { # 21. 调整数组顺序使奇数位于偶数前面 -[NowCoder](https://www.nowcoder.com/practice/beb5aa231adc45b2a5dcc5b62c93f593?tpId=13&tqId=11166&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/beb5aa231adc45b2a5dcc5b62c93f593?tpId=13&tqId=11166&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -125,7 +125,7 @@ private void swap(int[] nums, int i, int j) { # 22. 链表中倒数第 K 个结点 -[NowCoder](https://www.nowcoder.com/practice/529d3ae5a407492994ad2a246518148a?tpId=13&tqId=11167&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/529d3ae5a407492994ad2a246518148a?tpId=13&tqId=11167&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 解题思路 @@ -153,7 +153,7 @@ public ListNode FindKthToTail(ListNode head, int k) { # 23. 链表中环的入口结点 -[NowCoder](https://www.nowcoder.com/practice/253d2c59ec3e4bc68da16833f79a38e4?tpId=13&tqId=11208&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/253d2c59ec3e4bc68da16833f79a38e4?tpId=13&tqId=11208&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -187,7 +187,7 @@ public ListNode EntryNodeOfLoop(ListNode pHead) { # 24. 反转链表 -[NowCoder](https://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca?tpId=13&tqId=11168&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca?tpId=13&tqId=11168&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 解题思路 @@ -224,7 +224,7 @@ public ListNode ReverseList(ListNode head) { # 25. 合并两个排序的链表 -[NowCoder](https://www.nowcoder.com/practice/d8b6b4358f774294a89de2a6ac4d9337?tpId=13&tqId=11169&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/d8b6b4358f774294a89de2a6ac4d9337?tpId=13&tqId=11169&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -276,7 +276,7 @@ public ListNode Merge(ListNode list1, ListNode list2) { # 26. 树的子结构 -[NowCoder](https://www.nowcoder.com/practice/6e196c44c7004d15b1610b9afca8bd88?tpId=13&tqId=11170&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/6e196c44c7004d15b1610b9afca8bd88?tpId=13&tqId=11170&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -304,7 +304,7 @@ private boolean isSubtreeWithRoot(TreeNode root1, TreeNode root2) { # 27. 二叉树的镜像 -[NowCoder](https://www.nowcoder.com/practice/564f4c26aa584921bc75623e48ca3011?tpId=13&tqId=11171&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/564f4c26aa584921bc75623e48ca3011?tpId=13&tqId=11171&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -330,7 +330,7 @@ private void swap(TreeNode root) { # 28 对称的二叉树 -[NowCoder](https://www.nowcoder.com/practice/ff05d44dfdb04e1d83bdbdab320efbcb?tpId=13&tqId=11211&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/ff05d44dfdb04e1d83bdbdab320efbcb?tpId=13&tqId=11211&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -358,7 +358,7 @@ boolean isSymmetrical(TreeNode t1, TreeNode t2) { # 29. 顺时针打印矩阵 -[NowCoder](https://www.nowcoder.com/practice/9b4c81a02cd34f76be2659fa0d54342a?tpId=13&tqId=11172&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/9b4c81a02cd34f76be2659fa0d54342a?tpId=13&tqId=11172&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 diff --git a/docs/notes/剑指 Offer 题解 - 30~39.md b/docs/notes/剑指 Offer 题解 - 30~39.md index 6f949cde..8617c697 100644 --- a/docs/notes/剑指 Offer 题解 - 30~39.md +++ b/docs/notes/剑指 Offer 题解 - 30~39.md @@ -16,7 +16,7 @@ # 30. 包含 min 函数的栈 -[NowCoder](https://www.nowcoder.com/practice/4c776177d2c04c2494f2555c9fcc1e49?tpId=13&tqId=11173&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/4c776177d2c04c2494f2555c9fcc1e49?tpId=13&tqId=11173&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -49,7 +49,7 @@ public int min() { # 31. 栈的压入、弹出序列 -[NowCoder](https://www.nowcoder.com/practice/d77d11405cc7470d82554cb392585106?tpId=13&tqId=11174&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/d77d11405cc7470d82554cb392585106?tpId=13&tqId=11174&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -79,7 +79,7 @@ public boolean IsPopOrder(int[] pushSequence, int[] popSequence) { # 32.1 从上往下打印二叉树 -[NowCoder](https://www.nowcoder.com/practice/7fe2212963db4790b57431d9ed259701?tpId=13&tqId=11175&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/7fe2212963db4790b57431d9ed259701?tpId=13&tqId=11175&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -117,7 +117,7 @@ public ArrayList PrintFromTopToBottom(TreeNode root) { # 32.2 把二叉树打印成多行 -[NowCoder](https://www.nowcoder.com/practice/445c44d982d04483b04a54f298796288?tpId=13&tqId=11213&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/445c44d982d04483b04a54f298796288?tpId=13&tqId=11213&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -150,7 +150,7 @@ ArrayList> Print(TreeNode pRoot) { # 32.3 按之字形顺序打印二叉树 -[NowCoder](https://www.nowcoder.com/practice/91b69814117f4e8097390d107d2efbe0?tpId=13&tqId=11212&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/91b69814117f4e8097390d107d2efbe0?tpId=13&tqId=11212&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -187,7 +187,7 @@ public ArrayList> Print(TreeNode pRoot) { # 33. 二叉搜索树的后序遍历序列 -[NowCoder](https://www.nowcoder.com/practice/a861533d45854474ac791d90e447bafd?tpId=13&tqId=11176&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/a861533d45854474ac791d90e447bafd?tpId=13&tqId=11176&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -222,7 +222,7 @@ private boolean verify(int[] sequence, int first, int last) { # 34. 二叉树中和为某一值的路径 -[NowCoder](https://www.nowcoder.com/practice/b736e784e3e34731af99065031301bca?tpId=13&tqId=11177&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/b736e784e3e34731af99065031301bca?tpId=13&tqId=11177&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -259,7 +259,7 @@ private void backtracking(TreeNode node, int target, ArrayList path) { # 35. 复杂链表的复制 -[NowCoder](https://www.nowcoder.com/practice/f836b2c43afc4b35ad6adc41ec941dba?tpId=13&tqId=11178&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/f836b2c43afc4b35ad6adc41ec941dba?tpId=13&tqId=11178&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -327,7 +327,7 @@ public RandomListNode Clone(RandomListNode pHead) { # 36. 二叉搜索树与双向链表 -[NowCoder](https://www.nowcoder.com/practice/947f6eb80d944a84850b0538bf0ec3a5?tpId=13&tqId=11179&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/947f6eb80d944a84850b0538bf0ec3a5?tpId=13&tqId=11179&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -362,7 +362,7 @@ private void inOrder(TreeNode node) { # 37. 序列化二叉树 -[NowCoder](https://www.nowcoder.com/practice/cf7e25aa97c04cc1a68c8f040e71fb84?tpId=13&tqId=11214&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/cf7e25aa97c04cc1a68c8f040e71fb84?tpId=13&tqId=11214&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -402,7 +402,7 @@ private TreeNode Deserialize() { # 38. 字符串的排列 -[NowCoder](https://www.nowcoder.com/practice/fe6b651b66ae47d7acce78ffdd9a96c7?tpId=13&tqId=11180&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/fe6b651b66ae47d7acce78ffdd9a96c7?tpId=13&tqId=11180&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -443,7 +443,7 @@ private void backtracking(char[] chars, boolean[] hasUsed, StringBuilder s) { # 39. 数组中出现次数超过一半的数字 -[NowCoder](https://www.nowcoder.com/practice/e8a1b01a2df14cb2b228b30ee6a92163?tpId=13&tqId=11181&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/e8a1b01a2df14cb2b228b30ee6a92163?tpId=13&tqId=11181&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 解题思路 diff --git a/docs/notes/剑指 Offer 题解 - 3~9.md b/docs/notes/剑指 Offer 题解 - 3~9.md index 9c13c2b7..5a9096ee 100644 --- a/docs/notes/剑指 Offer 题解 - 3~9.md +++ b/docs/notes/剑指 Offer 题解 - 3~9.md @@ -11,7 +11,7 @@ # 3. 数组中重复的数字 -[NowCoder](https://www.nowcoder.com/practice/623a5ac0ea5b4e5f95552655361ae0a8?tpId=13&tqId=11203&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/623a5ac0ea5b4e5f95552655361ae0a8?tpId=13&tqId=11203&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -61,7 +61,7 @@ private void swap(int[] nums, int i, int j) { # 4. 二维数组中的查找 -[NowCoder](https://www.nowcoder.com/practice/abc3fe2ce8e146608e868a70efebf62e?tpId=13&tqId=11154&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/abc3fe2ce8e146608e868a70efebf62e?tpId=13&tqId=11154&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -109,7 +109,7 @@ public boolean Find(int target, int[][] matrix) { # 5. 替换空格 -[NowCoder](https://www.nowcoder.com/practice/4060ac7e3e404ad1a894ef3e17650423?tpId=13&tqId=11155&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/4060ac7e3e404ad1a894ef3e17650423?tpId=13&tqId=11155&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -158,7 +158,7 @@ public String replaceSpace(StringBuffer str) { # 6. 从尾到头打印链表 -[NowCoder](https://www.nowcoder.com/practice/d0267f7f55b3412ba93bd35cfa8e8035?tpId=13&tqId=11156&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/d0267f7f55b3412ba93bd35cfa8e8035?tpId=13&tqId=11156&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -237,7 +237,7 @@ public ArrayList printListFromTailToHead(ListNode listNode) { # 7. 重建二叉树 -[NowCoder](https://www.nowcoder.com/practice/8a19cbe657394eeaac2f6ea9b0f6fcf6?tpId=13&tqId=11157&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/8a19cbe657394eeaac2f6ea9b0f6fcf6?tpId=13&tqId=11157&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -276,7 +276,7 @@ private TreeNode reConstructBinaryTree(int[] pre, int preL, int preR, int inL) { # 8. 二叉树的下一个结点 -[NowCoder](https://www.nowcoder.com/practice/9023a0c988684a53960365b889ceaf5e?tpId=13&tqId=11210&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/9023a0c988684a53960365b889ceaf5e?tpId=13&tqId=11210&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -327,7 +327,7 @@ public TreeLinkNode GetNext(TreeLinkNode pNode) { # 9. 用两个栈实现队列 -[NowCoder](https://www.nowcoder.com/practice/54275ddae22f475981afa2244dd448c6?tpId=13&tqId=11158&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/54275ddae22f475981afa2244dd448c6?tpId=13&tqId=11158&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 diff --git a/docs/notes/剑指 Offer 题解 - 40~49.md b/docs/notes/剑指 Offer 题解 - 40~49.md index 7dc925fd..61bbc96d 100644 --- a/docs/notes/剑指 Offer 题解 - 40~49.md +++ b/docs/notes/剑指 Offer 题解 - 40~49.md @@ -15,7 +15,7 @@ # 40. 最小的 K 个数 -[NowCoder](https://www.nowcoder.com/practice/6a296eb82cf844ca8539b57c23e6e9bf?tpId=13&tqId=11182&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/6a296eb82cf844ca8539b57c23e6e9bf?tpId=13&tqId=11182&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 解题思路 @@ -97,7 +97,7 @@ public ArrayList GetLeastNumbers_Solution(int[] nums, int k) { # 41.1 数据流中的中位数 -[NowCoder](https://www.nowcoder.com/practice/9be0172896bd43948f8a32fb954e1be1?tpId=13&tqId=11216&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/9be0172896bd43948f8a32fb954e1be1?tpId=13&tqId=11216&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -138,7 +138,7 @@ public Double GetMedian() { # 41.2 字符流中第一个不重复的字符 -[NowCoder](https://www.nowcoder.com/practice/00de97733b8e4f97a3fb5c680ee10720?tpId=13&tqId=11207&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/00de97733b8e4f97a3fb5c680ee10720?tpId=13&tqId=11207&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -164,7 +164,7 @@ public char FirstAppearingOnce() { # 42. 连续子数组的最大和 -[NowCoder](https://www.nowcoder.com/practice/459bd355da1549fa8a49e350bf3df484?tpId=13&tqId=11183&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/459bd355da1549fa8a49e350bf3df484?tpId=13&tqId=11183&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -188,7 +188,7 @@ public int FindGreatestSumOfSubArray(int[] nums) { # 43. 从 1 到 n 整数中 1 出现的次数 -[NowCoder](https://www.nowcoder.com/practice/bd7f978302044eee894445e244c7eee6?tpId=13&tqId=11184&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/bd7f978302044eee894445e244c7eee6?tpId=13&tqId=11184&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 解题思路 @@ -262,7 +262,7 @@ private int getDigitAtIndex(int index, int place) { # 45. 把数组排成最小的数 -[NowCoder](https://www.nowcoder.com/practice/8fecd3f8ba334add803bf2a06af1b993?tpId=13&tqId=11185&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/8fecd3f8ba334add803bf2a06af1b993?tpId=13&tqId=11185&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -388,7 +388,7 @@ public int longestSubStringWithoutDuplication(String str) { # 49. 丑数 -[NowCoder](https://www.nowcoder.com/practice/6aa9e04fc3794f68acf8778237ba065b?tpId=13&tqId=11186&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/6aa9e04fc3794f68acf8778237ba065b?tpId=13&tqId=11186&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 diff --git a/docs/notes/剑指 Offer 题解 - 50~59.md b/docs/notes/剑指 Offer 题解 - 50~59.md index a84cb37b..5f4f6d5f 100644 --- a/docs/notes/剑指 Offer 题解 - 50~59.md +++ b/docs/notes/剑指 Offer 题解 - 50~59.md @@ -17,7 +17,7 @@ # 50. 第一个只出现一次的字符位置 -[NowCoder](https://www.nowcoder.com/practice/1c82e8cf713b4bbeb2a5b31cf5b0417c?tpId=13&tqId=11187&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/1c82e8cf713b4bbeb2a5b31cf5b0417c?tpId=13&tqId=11187&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -67,7 +67,7 @@ public int FirstNotRepeatingChar2(String str) { # 51. 数组中的逆序对 -[NowCoder](https://www.nowcoder.com/practice/96bd6684e04a44eb80e6a68efc0ec6c5?tpId=13&tqId=11188&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/96bd6684e04a44eb80e6a68efc0ec6c5?tpId=13&tqId=11188&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -116,7 +116,7 @@ private void merge(int[] nums, int l, int m, int h) { # 52. 两个链表的第一个公共结点 -[NowCoder](https://www.nowcoder.com/practice/6ab1d9a29e88450685099d45c9e31e46?tpId=13&tqId=11189&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/6ab1d9a29e88450685099d45c9e31e46?tpId=13&tqId=11189&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -141,7 +141,7 @@ public ListNode FindFirstCommonNode(ListNode pHead1, ListNode pHead2) { # 53. 数字在排序数组中出现的次数 -[NowCoder](https://www.nowcoder.com/practice/70610bf967994b22bb1c26f9ae901fa2?tpId=13&tqId=11190&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/70610bf967994b22bb1c26f9ae901fa2?tpId=13&tqId=11190&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -178,7 +178,7 @@ private int binarySearch(int[] nums, int K) { # 54. 二叉查找树的第 K 个结点 -[NowCoder](https://www.nowcoder.com/practice/ef068f602dde4d28aab2b210e859150a?tpId=13&tqId=11215&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/ef068f602dde4d28aab2b210e859150a?tpId=13&tqId=11215&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 解题思路 @@ -206,7 +206,7 @@ private void inOrder(TreeNode root, int k) { # 55.1 二叉树的深度 -[NowCoder](https://www.nowcoder.com/practice/435fb86331474282a3499955f0a41e8b?tpId=13&tqId=11191&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/435fb86331474282a3499955f0a41e8b?tpId=13&tqId=11191&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -224,7 +224,7 @@ public int TreeDepth(TreeNode root) { # 55.2 平衡二叉树 -[NowCoder](https://www.nowcoder.com/practice/8b3b95850edb4115918ecebdf1b4d222?tpId=13&tqId=11192&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/8b3b95850edb4115918ecebdf1b4d222?tpId=13&tqId=11192&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -255,7 +255,7 @@ private int height(TreeNode root) { # 56. 数组中只出现一次的数字 -[NowCoder](https://www.nowcoder.com/practice/e02fdb54d7524710a7d664d082bb7811?tpId=13&tqId=11193&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/e02fdb54d7524710a7d664d082bb7811?tpId=13&tqId=11193&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -284,7 +284,7 @@ public void FindNumsAppearOnce(int[] nums, int num1[], int num2[]) { # 57.1 和为 S 的两个数字 -[NowCoder](https://www.nowcoder.com/practice/390da4f7a00f44bea7c2f3d19491311b?tpId=13&tqId=11195&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/390da4f7a00f44bea7c2f3d19491311b?tpId=13&tqId=11195&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -316,7 +316,7 @@ public ArrayList FindNumbersWithSum(int[] array, int sum) { # 57.2 和为 S 的连续正数序列 -[NowCoder](https://www.nowcoder.com/practice/c451a3fd84b64cb19485dad758a55ebe?tpId=13&tqId=11194&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/c451a3fd84b64cb19485dad758a55ebe?tpId=13&tqId=11194&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -360,7 +360,7 @@ public ArrayList> FindContinuousSequence(int sum) { # 58.1 翻转单词顺序列 -[NowCoder](https://www.nowcoder.com/practice/3194a4f4cf814f63919d0790578d51f3?tpId=13&tqId=11197&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/3194a4f4cf814f63919d0790578d51f3?tpId=13&tqId=11197&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -408,7 +408,7 @@ private void swap(char[] c, int i, int j) { # 58.2 左旋转字符串 -[NowCoder](https://www.nowcoder.com/practice/12d959b108cb42b1ab72cef4d36af5ec?tpId=13&tqId=11196&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/12d959b108cb42b1ab72cef4d36af5ec?tpId=13&tqId=11196&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -450,7 +450,7 @@ private void swap(char[] chars, int i, int j) { # 59. 滑动窗口的最大值 -[NowCoder](https://www.nowcoder.com/practice/1624bc35a45c42c0bc17d17fa0cba788?tpId=13&tqId=11217&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/1624bc35a45c42c0bc17d17fa0cba788?tpId=13&tqId=11217&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 diff --git a/docs/notes/剑指 Offer 题解 - 60~68.md b/docs/notes/剑指 Offer 题解 - 60~68.md index 2887629b..c1a36c82 100644 --- a/docs/notes/剑指 Offer 题解 - 60~68.md +++ b/docs/notes/剑指 Offer 题解 - 60~68.md @@ -86,7 +86,7 @@ public List> dicesSum(int n) { # 61. 扑克牌顺子 -[NowCoder](https://www.nowcoder.com/practice/762836f4d43d43ca9deb273b3de8e1f4?tpId=13&tqId=11198&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/762836f4d43d43ca9deb273b3de8e1f4?tpId=13&tqId=11198&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -124,7 +124,7 @@ public boolean isContinuous(int[] nums) { # 62. 圆圈中最后剩下的数 -[NowCoder](https://www.nowcoder.com/practice/f78a359491e64a50bce2d89cff857eb6?tpId=13&tqId=11199&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/f78a359491e64a50bce2d89cff857eb6?tpId=13&tqId=11199&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -174,7 +174,7 @@ public int maxProfit(int[] prices) { # 64. 求 1+2+3+...+n -[NowCoder](https://www.nowcoder.com/practice/7a0da8fc483247ff8800059e12d7caf1?tpId=13&tqId=11200&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/7a0da8fc483247ff8800059e12d7caf1?tpId=13&tqId=11200&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -198,7 +198,7 @@ public int Sum_Solution(int n) { # 65. 不用加减乘除做加法 -[NowCoder](https://www.nowcoder.com/practice/59ac416b4b944300b617d4f7f111b215?tpId=13&tqId=11201&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/59ac416b4b944300b617d4f7f111b215?tpId=13&tqId=11201&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -218,7 +218,7 @@ public int Add(int a, int b) { # 66. 构建乘积数组 -[NowCoder](https://www.nowcoder.com/practice/94a4d381a68b47b7a8bed86f2975db46?tpId=13&tqId=11204&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/94a4d381a68b47b7a8bed86f2975db46?tpId=13&tqId=11204&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -243,7 +243,7 @@ public int[] multiply(int[] A) { # 67. 把字符串转换成整数 -[NowCoder](https://www.nowcoder.com/practice/1277c681251b4372bdef344468e4f26e?tpId=13&tqId=11202&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/1277c681251b4372bdef344468e4f26e?tpId=13&tqId=11202&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 diff --git a/notes/剑指 Offer 题解 - 10~19.md b/notes/剑指 Offer 题解 - 10~19.md index 1a05a88a..7b2c78fe 100644 --- a/notes/剑指 Offer 题解 - 10~19.md +++ b/notes/剑指 Offer 题解 - 10~19.md @@ -18,7 +18,7 @@ # 10.1 斐波那契数列 -[NowCoder](https://www.nowcoder.com/practice/c6c7742f5ba7442aada113136ddea0c3?tpId=13&tqId=11160&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/c6c7742f5ba7442aada113136ddea0c3?tpId=13&tqId=11160&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -86,7 +86,7 @@ public class Solution { # 10.2 矩形覆盖 -[NowCoder](https://www.nowcoder.com/practice/72a5a919508a4251859fb2cfb987a0e6?tpId=13&tqId=11163&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/72a5a919508a4251859fb2cfb987a0e6?tpId=13&tqId=11163&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -127,7 +127,7 @@ public int RectCover(int n) { # 10.3 跳台阶 -[NowCoder](https://www.nowcoder.com/practice/8c82a5b80378478f9484d87d1c5f12a4?tpId=13&tqId=11161&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/8c82a5b80378478f9484d87d1c5f12a4?tpId=13&tqId=11161&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -166,7 +166,7 @@ public int JumpFloor(int n) { # 10.4 变态跳台阶 -[NowCoder](https://www.nowcoder.com/practice/22243d016f6b47f2a6928b4313c85387?tpId=13&tqId=11162&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/22243d016f6b47f2a6928b4313c85387?tpId=13&tqId=11162&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -226,7 +226,7 @@ public int JumpFloorII(int target) { # 11. 旋转数组的最小数字 -[NowCoder](https://www.nowcoder.com/practice/9f3231a991af4f55b95579b44b7a01ba?tpId=13&tqId=11159&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/9f3231a991af4f55b95579b44b7a01ba?tpId=13&tqId=11159&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -292,7 +292,7 @@ private int minNumber(int[] nums, int l, int h) { # 12. 矩阵中的路径 -[NowCoder](https://www.nowcoder.com/practice/c61c6999eecb4b8f88a98f66b273a3cc?tpId=13&tqId=11218&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/c61c6999eecb4b8f88a98f66b273a3cc?tpId=13&tqId=11218&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -357,7 +357,7 @@ private char[][] buildMatrix(char[] array) { # 13. 机器人的运动范围 -[NowCoder](https://www.nowcoder.com/practice/6e5207314b5241fb83f2329e89fdecc8?tpId=13&tqId=11219&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/6e5207314b5241fb83f2329e89fdecc8?tpId=13&tqId=11219&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -469,7 +469,7 @@ public int integerBreak(int n) { # 15. 二进制中 1 的个数 -[NowCoder](https://www.nowcoder.com/practice/8ee967e43c2c4ec193b040ea7fbb10b8?tpId=13&tqId=11164&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/8ee967e43c2c4ec193b040ea7fbb10b8?tpId=13&tqId=11164&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -510,7 +510,7 @@ public int NumberOf1(int n) { # 16. 数值的整数次方 -[NowCoder](https://www.nowcoder.com/practice/1a834e5e3e1a4b7ba251417554e07c00?tpId=13&tqId=11165&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/1a834e5e3e1a4b7ba251417554e07c00?tpId=13&tqId=11165&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -626,7 +626,7 @@ public ListNode deleteNode(ListNode head, ListNode tobeDelete) { # 18.2 删除链表中重复的结点 -[NowCoder](https://www.nowcoder.com/practice/fc533c45b73a41b0b44ccba763f866ef?tpId=13&tqId=11209&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/fc533c45b73a41b0b44ccba763f866ef?tpId=13&tqId=11209&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -652,7 +652,7 @@ public ListNode deleteDuplication(ListNode pHead) { # 19. 正则表达式匹配 -[NowCoder](https://www.nowcoder.com/practice/45327ae22b7b413ea21df13ee7d6429c?tpId=13&tqId=11205&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/45327ae22b7b413ea21df13ee7d6429c?tpId=13&tqId=11205&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 diff --git a/notes/剑指 Offer 题解 - 20~29.md b/notes/剑指 Offer 题解 - 20~29.md index 3f72f933..315b7527 100644 --- a/notes/剑指 Offer 题解 - 20~29.md +++ b/notes/剑指 Offer 题解 - 20~29.md @@ -14,7 +14,7 @@ # 20. 表示数值的字符串 -[NowCoder](https://www.nowcoder.com/practice/6f8c901d091949a5837e24bb82a731f2?tpId=13&tqId=11206&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/6f8c901d091949a5837e24bb82a731f2?tpId=13&tqId=11206&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -64,7 +64,7 @@ public boolean isNumeric(char[] str) { # 21. 调整数组顺序使奇数位于偶数前面 -[NowCoder](https://www.nowcoder.com/practice/beb5aa231adc45b2a5dcc5b62c93f593?tpId=13&tqId=11166&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/beb5aa231adc45b2a5dcc5b62c93f593?tpId=13&tqId=11166&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -125,7 +125,7 @@ private void swap(int[] nums, int i, int j) { # 22. 链表中倒数第 K 个结点 -[NowCoder](https://www.nowcoder.com/practice/529d3ae5a407492994ad2a246518148a?tpId=13&tqId=11167&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/529d3ae5a407492994ad2a246518148a?tpId=13&tqId=11167&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 解题思路 @@ -153,7 +153,7 @@ public ListNode FindKthToTail(ListNode head, int k) { # 23. 链表中环的入口结点 -[NowCoder](https://www.nowcoder.com/practice/253d2c59ec3e4bc68da16833f79a38e4?tpId=13&tqId=11208&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/253d2c59ec3e4bc68da16833f79a38e4?tpId=13&tqId=11208&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -187,7 +187,7 @@ public ListNode EntryNodeOfLoop(ListNode pHead) { # 24. 反转链表 -[NowCoder](https://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca?tpId=13&tqId=11168&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca?tpId=13&tqId=11168&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 解题思路 @@ -224,7 +224,7 @@ public ListNode ReverseList(ListNode head) { # 25. 合并两个排序的链表 -[NowCoder](https://www.nowcoder.com/practice/d8b6b4358f774294a89de2a6ac4d9337?tpId=13&tqId=11169&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/d8b6b4358f774294a89de2a6ac4d9337?tpId=13&tqId=11169&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -276,7 +276,7 @@ public ListNode Merge(ListNode list1, ListNode list2) { # 26. 树的子结构 -[NowCoder](https://www.nowcoder.com/practice/6e196c44c7004d15b1610b9afca8bd88?tpId=13&tqId=11170&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/6e196c44c7004d15b1610b9afca8bd88?tpId=13&tqId=11170&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -304,7 +304,7 @@ private boolean isSubtreeWithRoot(TreeNode root1, TreeNode root2) { # 27. 二叉树的镜像 -[NowCoder](https://www.nowcoder.com/practice/564f4c26aa584921bc75623e48ca3011?tpId=13&tqId=11171&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/564f4c26aa584921bc75623e48ca3011?tpId=13&tqId=11171&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -330,7 +330,7 @@ private void swap(TreeNode root) { # 28 对称的二叉树 -[NowCoder](https://www.nowcoder.com/practice/ff05d44dfdb04e1d83bdbdab320efbcb?tpId=13&tqId=11211&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/ff05d44dfdb04e1d83bdbdab320efbcb?tpId=13&tqId=11211&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -358,7 +358,7 @@ boolean isSymmetrical(TreeNode t1, TreeNode t2) { # 29. 顺时针打印矩阵 -[NowCoder](https://www.nowcoder.com/practice/9b4c81a02cd34f76be2659fa0d54342a?tpId=13&tqId=11172&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/9b4c81a02cd34f76be2659fa0d54342a?tpId=13&tqId=11172&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 diff --git a/notes/剑指 Offer 题解 - 30~39.md b/notes/剑指 Offer 题解 - 30~39.md index 979e3526..bcf357ca 100644 --- a/notes/剑指 Offer 题解 - 30~39.md +++ b/notes/剑指 Offer 题解 - 30~39.md @@ -16,7 +16,7 @@ # 30. 包含 min 函数的栈 -[NowCoder](https://www.nowcoder.com/practice/4c776177d2c04c2494f2555c9fcc1e49?tpId=13&tqId=11173&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/4c776177d2c04c2494f2555c9fcc1e49?tpId=13&tqId=11173&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -49,7 +49,7 @@ public int min() { # 31. 栈的压入、弹出序列 -[NowCoder](https://www.nowcoder.com/practice/d77d11405cc7470d82554cb392585106?tpId=13&tqId=11174&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/d77d11405cc7470d82554cb392585106?tpId=13&tqId=11174&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -79,7 +79,7 @@ public boolean IsPopOrder(int[] pushSequence, int[] popSequence) { # 32.1 从上往下打印二叉树 -[NowCoder](https://www.nowcoder.com/practice/7fe2212963db4790b57431d9ed259701?tpId=13&tqId=11175&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/7fe2212963db4790b57431d9ed259701?tpId=13&tqId=11175&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -117,7 +117,7 @@ public ArrayList PrintFromTopToBottom(TreeNode root) { # 32.2 把二叉树打印成多行 -[NowCoder](https://www.nowcoder.com/practice/445c44d982d04483b04a54f298796288?tpId=13&tqId=11213&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/445c44d982d04483b04a54f298796288?tpId=13&tqId=11213&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -150,7 +150,7 @@ ArrayList> Print(TreeNode pRoot) { # 32.3 按之字形顺序打印二叉树 -[NowCoder](https://www.nowcoder.com/practice/91b69814117f4e8097390d107d2efbe0?tpId=13&tqId=11212&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/91b69814117f4e8097390d107d2efbe0?tpId=13&tqId=11212&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -187,7 +187,7 @@ public ArrayList> Print(TreeNode pRoot) { # 33. 二叉搜索树的后序遍历序列 -[NowCoder](https://www.nowcoder.com/practice/a861533d45854474ac791d90e447bafd?tpId=13&tqId=11176&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/a861533d45854474ac791d90e447bafd?tpId=13&tqId=11176&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -222,7 +222,7 @@ private boolean verify(int[] sequence, int first, int last) { # 34. 二叉树中和为某一值的路径 -[NowCoder](https://www.nowcoder.com/practice/b736e784e3e34731af99065031301bca?tpId=13&tqId=11177&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/b736e784e3e34731af99065031301bca?tpId=13&tqId=11177&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -259,7 +259,7 @@ private void backtracking(TreeNode node, int target, ArrayList path) { # 35. 复杂链表的复制 -[NowCoder](https://www.nowcoder.com/practice/f836b2c43afc4b35ad6adc41ec941dba?tpId=13&tqId=11178&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/f836b2c43afc4b35ad6adc41ec941dba?tpId=13&tqId=11178&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -327,7 +327,7 @@ public RandomListNode Clone(RandomListNode pHead) { # 36. 二叉搜索树与双向链表 -[NowCoder](https://www.nowcoder.com/practice/947f6eb80d944a84850b0538bf0ec3a5?tpId=13&tqId=11179&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/947f6eb80d944a84850b0538bf0ec3a5?tpId=13&tqId=11179&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -362,7 +362,7 @@ private void inOrder(TreeNode node) { # 37. 序列化二叉树 -[NowCoder](https://www.nowcoder.com/practice/cf7e25aa97c04cc1a68c8f040e71fb84?tpId=13&tqId=11214&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/cf7e25aa97c04cc1a68c8f040e71fb84?tpId=13&tqId=11214&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -402,7 +402,7 @@ private TreeNode Deserialize() { # 38. 字符串的排列 -[NowCoder](https://www.nowcoder.com/practice/fe6b651b66ae47d7acce78ffdd9a96c7?tpId=13&tqId=11180&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/fe6b651b66ae47d7acce78ffdd9a96c7?tpId=13&tqId=11180&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -443,7 +443,7 @@ private void backtracking(char[] chars, boolean[] hasUsed, StringBuilder s) { # 39. 数组中出现次数超过一半的数字 -[NowCoder](https://www.nowcoder.com/practice/e8a1b01a2df14cb2b228b30ee6a92163?tpId=13&tqId=11181&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/e8a1b01a2df14cb2b228b30ee6a92163?tpId=13&tqId=11181&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 解题思路 diff --git a/notes/剑指 Offer 题解 - 3~9.md b/notes/剑指 Offer 题解 - 3~9.md index 305c388b..e07962d1 100644 --- a/notes/剑指 Offer 题解 - 3~9.md +++ b/notes/剑指 Offer 题解 - 3~9.md @@ -11,7 +11,7 @@ # 3. 数组中重复的数字 -[NowCoder](https://www.nowcoder.com/practice/623a5ac0ea5b4e5f95552655361ae0a8?tpId=13&tqId=11203&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/623a5ac0ea5b4e5f95552655361ae0a8?tpId=13&tqId=11203&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -61,7 +61,7 @@ private void swap(int[] nums, int i, int j) { # 4. 二维数组中的查找 -[NowCoder](https://www.nowcoder.com/practice/abc3fe2ce8e146608e868a70efebf62e?tpId=13&tqId=11154&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/abc3fe2ce8e146608e868a70efebf62e?tpId=13&tqId=11154&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -109,7 +109,7 @@ public boolean Find(int target, int[][] matrix) { # 5. 替换空格 -[NowCoder](https://www.nowcoder.com/practice/4060ac7e3e404ad1a894ef3e17650423?tpId=13&tqId=11155&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/4060ac7e3e404ad1a894ef3e17650423?tpId=13&tqId=11155&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -158,7 +158,7 @@ public String replaceSpace(StringBuffer str) { # 6. 从尾到头打印链表 -[NowCoder](https://www.nowcoder.com/practice/d0267f7f55b3412ba93bd35cfa8e8035?tpId=13&tqId=11156&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/d0267f7f55b3412ba93bd35cfa8e8035?tpId=13&tqId=11156&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -237,7 +237,7 @@ public ArrayList printListFromTailToHead(ListNode listNode) { # 7. 重建二叉树 -[NowCoder](https://www.nowcoder.com/practice/8a19cbe657394eeaac2f6ea9b0f6fcf6?tpId=13&tqId=11157&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/8a19cbe657394eeaac2f6ea9b0f6fcf6?tpId=13&tqId=11157&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -276,7 +276,7 @@ private TreeNode reConstructBinaryTree(int[] pre, int preL, int preR, int inL) { # 8. 二叉树的下一个结点 -[NowCoder](https://www.nowcoder.com/practice/9023a0c988684a53960365b889ceaf5e?tpId=13&tqId=11210&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/9023a0c988684a53960365b889ceaf5e?tpId=13&tqId=11210&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -327,7 +327,7 @@ public TreeLinkNode GetNext(TreeLinkNode pNode) { # 9. 用两个栈实现队列 -[NowCoder](https://www.nowcoder.com/practice/54275ddae22f475981afa2244dd448c6?tpId=13&tqId=11158&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/54275ddae22f475981afa2244dd448c6?tpId=13&tqId=11158&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 diff --git a/notes/剑指 Offer 题解 - 40~49.md b/notes/剑指 Offer 题解 - 40~49.md index 7dc925fd..61bbc96d 100644 --- a/notes/剑指 Offer 题解 - 40~49.md +++ b/notes/剑指 Offer 题解 - 40~49.md @@ -15,7 +15,7 @@ # 40. 最小的 K 个数 -[NowCoder](https://www.nowcoder.com/practice/6a296eb82cf844ca8539b57c23e6e9bf?tpId=13&tqId=11182&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/6a296eb82cf844ca8539b57c23e6e9bf?tpId=13&tqId=11182&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 解题思路 @@ -97,7 +97,7 @@ public ArrayList GetLeastNumbers_Solution(int[] nums, int k) { # 41.1 数据流中的中位数 -[NowCoder](https://www.nowcoder.com/practice/9be0172896bd43948f8a32fb954e1be1?tpId=13&tqId=11216&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/9be0172896bd43948f8a32fb954e1be1?tpId=13&tqId=11216&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -138,7 +138,7 @@ public Double GetMedian() { # 41.2 字符流中第一个不重复的字符 -[NowCoder](https://www.nowcoder.com/practice/00de97733b8e4f97a3fb5c680ee10720?tpId=13&tqId=11207&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/00de97733b8e4f97a3fb5c680ee10720?tpId=13&tqId=11207&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -164,7 +164,7 @@ public char FirstAppearingOnce() { # 42. 连续子数组的最大和 -[NowCoder](https://www.nowcoder.com/practice/459bd355da1549fa8a49e350bf3df484?tpId=13&tqId=11183&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/459bd355da1549fa8a49e350bf3df484?tpId=13&tqId=11183&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -188,7 +188,7 @@ public int FindGreatestSumOfSubArray(int[] nums) { # 43. 从 1 到 n 整数中 1 出现的次数 -[NowCoder](https://www.nowcoder.com/practice/bd7f978302044eee894445e244c7eee6?tpId=13&tqId=11184&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/bd7f978302044eee894445e244c7eee6?tpId=13&tqId=11184&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 解题思路 @@ -262,7 +262,7 @@ private int getDigitAtIndex(int index, int place) { # 45. 把数组排成最小的数 -[NowCoder](https://www.nowcoder.com/practice/8fecd3f8ba334add803bf2a06af1b993?tpId=13&tqId=11185&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/8fecd3f8ba334add803bf2a06af1b993?tpId=13&tqId=11185&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -388,7 +388,7 @@ public int longestSubStringWithoutDuplication(String str) { # 49. 丑数 -[NowCoder](https://www.nowcoder.com/practice/6aa9e04fc3794f68acf8778237ba065b?tpId=13&tqId=11186&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/6aa9e04fc3794f68acf8778237ba065b?tpId=13&tqId=11186&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 diff --git a/notes/剑指 Offer 题解 - 50~59.md b/notes/剑指 Offer 题解 - 50~59.md index 5f5acc53..fd065384 100644 --- a/notes/剑指 Offer 题解 - 50~59.md +++ b/notes/剑指 Offer 题解 - 50~59.md @@ -17,7 +17,7 @@ # 50. 第一个只出现一次的字符位置 -[NowCoder](https://www.nowcoder.com/practice/1c82e8cf713b4bbeb2a5b31cf5b0417c?tpId=13&tqId=11187&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/1c82e8cf713b4bbeb2a5b31cf5b0417c?tpId=13&tqId=11187&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -67,7 +67,7 @@ public int FirstNotRepeatingChar2(String str) { # 51. 数组中的逆序对 -[NowCoder](https://www.nowcoder.com/practice/96bd6684e04a44eb80e6a68efc0ec6c5?tpId=13&tqId=11188&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/96bd6684e04a44eb80e6a68efc0ec6c5?tpId=13&tqId=11188&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -116,7 +116,7 @@ private void merge(int[] nums, int l, int m, int h) { # 52. 两个链表的第一个公共结点 -[NowCoder](https://www.nowcoder.com/practice/6ab1d9a29e88450685099d45c9e31e46?tpId=13&tqId=11189&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/6ab1d9a29e88450685099d45c9e31e46?tpId=13&tqId=11189&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -141,7 +141,7 @@ public ListNode FindFirstCommonNode(ListNode pHead1, ListNode pHead2) { # 53. 数字在排序数组中出现的次数 -[NowCoder](https://www.nowcoder.com/practice/70610bf967994b22bb1c26f9ae901fa2?tpId=13&tqId=11190&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/70610bf967994b22bb1c26f9ae901fa2?tpId=13&tqId=11190&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -178,7 +178,7 @@ private int binarySearch(int[] nums, int K) { # 54. 二叉查找树的第 K 个结点 -[NowCoder](https://www.nowcoder.com/practice/ef068f602dde4d28aab2b210e859150a?tpId=13&tqId=11215&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/ef068f602dde4d28aab2b210e859150a?tpId=13&tqId=11215&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 解题思路 @@ -206,7 +206,7 @@ private void inOrder(TreeNode root, int k) { # 55.1 二叉树的深度 -[NowCoder](https://www.nowcoder.com/practice/435fb86331474282a3499955f0a41e8b?tpId=13&tqId=11191&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/435fb86331474282a3499955f0a41e8b?tpId=13&tqId=11191&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -224,7 +224,7 @@ public int TreeDepth(TreeNode root) { # 55.2 平衡二叉树 -[NowCoder](https://www.nowcoder.com/practice/8b3b95850edb4115918ecebdf1b4d222?tpId=13&tqId=11192&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/8b3b95850edb4115918ecebdf1b4d222?tpId=13&tqId=11192&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -255,7 +255,7 @@ private int height(TreeNode root) { # 56. 数组中只出现一次的数字 -[NowCoder](https://www.nowcoder.com/practice/e02fdb54d7524710a7d664d082bb7811?tpId=13&tqId=11193&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/e02fdb54d7524710a7d664d082bb7811?tpId=13&tqId=11193&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -284,7 +284,7 @@ public void FindNumsAppearOnce(int[] nums, int num1[], int num2[]) { # 57.1 和为 S 的两个数字 -[NowCoder](https://www.nowcoder.com/practice/390da4f7a00f44bea7c2f3d19491311b?tpId=13&tqId=11195&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/390da4f7a00f44bea7c2f3d19491311b?tpId=13&tqId=11195&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -316,7 +316,7 @@ public ArrayList FindNumbersWithSum(int[] array, int sum) { # 57.2 和为 S 的连续正数序列 -[NowCoder](https://www.nowcoder.com/practice/c451a3fd84b64cb19485dad758a55ebe?tpId=13&tqId=11194&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/c451a3fd84b64cb19485dad758a55ebe?tpId=13&tqId=11194&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -360,7 +360,7 @@ public ArrayList> FindContinuousSequence(int sum) { # 58.1 翻转单词顺序列 -[NowCoder](https://www.nowcoder.com/practice/3194a4f4cf814f63919d0790578d51f3?tpId=13&tqId=11197&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/3194a4f4cf814f63919d0790578d51f3?tpId=13&tqId=11197&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -408,7 +408,7 @@ private void swap(char[] c, int i, int j) { # 58.2 左旋转字符串 -[NowCoder](https://www.nowcoder.com/practice/12d959b108cb42b1ab72cef4d36af5ec?tpId=13&tqId=11196&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/12d959b108cb42b1ab72cef4d36af5ec?tpId=13&tqId=11196&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -450,7 +450,7 @@ private void swap(char[] chars, int i, int j) { # 59. 滑动窗口的最大值 -[NowCoder](https://www.nowcoder.com/practice/1624bc35a45c42c0bc17d17fa0cba788?tpId=13&tqId=11217&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/1624bc35a45c42c0bc17d17fa0cba788?tpId=13&tqId=11217&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 diff --git a/notes/剑指 Offer 题解 - 60~68.md b/notes/剑指 Offer 题解 - 60~68.md index 51d2b54c..e151d567 100644 --- a/notes/剑指 Offer 题解 - 60~68.md +++ b/notes/剑指 Offer 题解 - 60~68.md @@ -86,7 +86,7 @@ public List> dicesSum(int n) { # 61. 扑克牌顺子 -[NowCoder](https://www.nowcoder.com/practice/762836f4d43d43ca9deb273b3de8e1f4?tpId=13&tqId=11198&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/762836f4d43d43ca9deb273b3de8e1f4?tpId=13&tqId=11198&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -124,7 +124,7 @@ public boolean isContinuous(int[] nums) { # 62. 圆圈中最后剩下的数 -[NowCoder](https://www.nowcoder.com/practice/f78a359491e64a50bce2d89cff857eb6?tpId=13&tqId=11199&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/f78a359491e64a50bce2d89cff857eb6?tpId=13&tqId=11199&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -174,7 +174,7 @@ public int maxProfit(int[] prices) { # 64. 求 1+2+3+...+n -[NowCoder](https://www.nowcoder.com/practice/7a0da8fc483247ff8800059e12d7caf1?tpId=13&tqId=11200&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/7a0da8fc483247ff8800059e12d7caf1?tpId=13&tqId=11200&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -198,7 +198,7 @@ public int Sum_Solution(int n) { # 65. 不用加减乘除做加法 -[NowCoder](https://www.nowcoder.com/practice/59ac416b4b944300b617d4f7f111b215?tpId=13&tqId=11201&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/59ac416b4b944300b617d4f7f111b215?tpId=13&tqId=11201&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -218,7 +218,7 @@ public int Add(int a, int b) { # 66. 构建乘积数组 -[NowCoder](https://www.nowcoder.com/practice/94a4d381a68b47b7a8bed86f2975db46?tpId=13&tqId=11204&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/94a4d381a68b47b7a8bed86f2975db46?tpId=13&tqId=11204&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 @@ -243,7 +243,7 @@ public int[] multiply(int[] A) { # 67. 把字符串转换成整数 -[NowCoder](https://www.nowcoder.com/practice/1277c681251b4372bdef344468e4f26e?tpId=13&tqId=11202&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking) +[NowCoder](https://www.nowcoder.com/practice/1277c681251b4372bdef344468e4f26e?tpId=13&tqId=11202&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 From 85f472266dd2ac64c84bd71ac3c595ecafd840ed Mon Sep 17 00:00:00 2001 From: CyC2018 Date: Thu, 17 Oct 2019 02:23:07 +0800 Subject: [PATCH 9/9] auto commit --- docs/notes/Leetcode 题解 - 搜索.md | 7 +++---- notes/Leetcode 题解 - 搜索.md | 7 +++---- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/docs/notes/Leetcode 题解 - 搜索.md b/docs/notes/Leetcode 题解 - 搜索.md index 2e0729e9..b884a189 100644 --- a/docs/notes/Leetcode 题解 - 搜索.md +++ b/docs/notes/Leetcode 题解 - 搜索.md @@ -503,13 +503,12 @@ Return: 左边和上边是太平洋,右边和下边是大西洋,内部的数字代表海拔,海拔高的地方的水能够流到低的地方,求解水能够流到太平洋和大西洋的所有位置。 ```java - private int m, n; private int[][] matrix; private int[][] direction = {{0, 1}, {0, -1}, {1, 0}, {-1, 0}}; -public List pacificAtlantic(int[][] matrix) { - List ret = new ArrayList<>(); +public List> pacificAtlantic(int[][] matrix) { + List> ret = new ArrayList<>(); if (matrix == null || matrix.length == 0) { return ret; } @@ -532,7 +531,7 @@ public List pacificAtlantic(int[][] matrix) { for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { if (canReachP[i][j] && canReachA[i][j]) { - ret.add(new int[]{i, j}); + ret.add(Arrays.asList(i, j)); } } } diff --git a/notes/Leetcode 题解 - 搜索.md b/notes/Leetcode 题解 - 搜索.md index 38945d90..4ce16d89 100644 --- a/notes/Leetcode 题解 - 搜索.md +++ b/notes/Leetcode 题解 - 搜索.md @@ -503,13 +503,12 @@ Return: 左边和上边是太平洋,右边和下边是大西洋,内部的数字代表海拔,海拔高的地方的水能够流到低的地方,求解水能够流到太平洋和大西洋的所有位置。 ```java - private int m, n; private int[][] matrix; private int[][] direction = {{0, 1}, {0, -1}, {1, 0}, {-1, 0}}; -public List pacificAtlantic(int[][] matrix) { - List ret = new ArrayList<>(); +public List> pacificAtlantic(int[][] matrix) { + List> ret = new ArrayList<>(); if (matrix == null || matrix.length == 0) { return ret; } @@ -532,7 +531,7 @@ public List pacificAtlantic(int[][] matrix) { for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { if (canReachP[i][j] && canReachA[i][j]) { - ret.add(new int[]{i, j}); + ret.add(Arrays.asList(i, j)); } } }