diff --git a/docs/notes/26. 树的子结构.md b/docs/notes/26. 树的子结构.md index 7fd34ab3..c5c31e50 100644 --- a/docs/notes/26. 树的子结构.md +++ b/docs/notes/26. 树的子结构.md @@ -1,6 +1,8 @@ # 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&from=cyc_github) +## 题目链接 + +[牛客网](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) ## 题目描述 diff --git a/docs/notes/57.2 和为 S 的连续正数序列.md b/docs/notes/57.2 和为 S 的连续正数序列.md index 6f71a13d..5d9f1122 100644 --- a/docs/notes/57.2 和为 S 的连续正数序列.md +++ b/docs/notes/57.2 和为 S 的连续正数序列.md @@ -1,12 +1,12 @@ # 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&from=cyc_github) - ## 题目描述 -输出所有和为 S 的连续正数序列。 +[牛客网](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) -例如和为 100 的连续序列有: +## 题目描述 + +输出所有和为 S 的连续正数序列。例如和为 100 的连续序列有: ``` [9, 10, 11, 12, 13, 14, 15, 16] diff --git a/docs/notes/58.1 翻转单词顺序列.md b/docs/notes/58.1 翻转单词顺序列.md index a22cfbcf..b221a77b 100644 --- a/docs/notes/58.1 翻转单词顺序列.md +++ b/docs/notes/58.1 翻转单词顺序列.md @@ -1,6 +1,8 @@ # 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&from=cyc_github) +## 题目描述 + +[牛客网](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) ## 题目描述 @@ -14,9 +16,9 @@ Output: ## 解题思路 -题目应该有一个隐含条件,就是不能用额外的空间。虽然 Java 的题目输入参数为 String 类型,需要先创建一个字符数组使得空间复杂度为 O(N),但是正确的参数类型应该和原书一样,为字符数组,并且只能使用该字符数组的空间。任何使用了额外空间的解法在面试时都会大打折扣,包括递归解法。 +先旋转每个单词,再旋转整个字符串。 -正确的解法应该是和书上一样,先旋转每个单词,再旋转整个字符串。 +题目应该有一个隐含条件,就是不能用额外的空间。虽然 Java 的题目输入参数为 String 类型,需要先创建一个字符数组使得空间复杂度为 O(N),但是正确的参数类型应该和原书一样,为字符数组,并且只能使用该字符数组的空间。任何使用了额外空间的解法在面试时都会大打折扣,包括递归解法。 ```java public String ReverseSentence(String str) { diff --git a/docs/notes/58.2 左旋转字符串.md b/docs/notes/58.2 左旋转字符串.md index a2a7d312..77b6db64 100644 --- a/docs/notes/58.2 左旋转字符串.md +++ b/docs/notes/58.2 左旋转字符串.md @@ -1,6 +1,8 @@ # 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&from=cyc_github) +## 题目链接 + +[牛客网](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) ## 题目描述 diff --git a/docs/notes/剑指 Offer 题解 - 目录.md b/docs/notes/剑指 Offer 题解 - 目录.md index 83cf0926..ed67ac89 100644 --- a/docs/notes/剑指 Offer 题解 - 目录.md +++ b/docs/notes/剑指 Offer 题解 - 目录.md @@ -30,6 +30,18 @@ - [58.1 翻转单词顺序列](58.1%20翻转单词顺序列.md) - [58.2 左旋转字符串](58.2%20左旋转字符串.md) +# 链表 + +- [6. 从尾到头打印链表](6.%20从尾到头打印链表.md) +- [18.1 在 O(1) 时间内删除链表节点](18.1%20在%20O(1)%20时间内删除链表节点.md) +- [18.2 删除链表中重复的结点](18.2%20删除链表中重复的结点.md) +- [22. 链表中倒数第 K 个结点](22.%20链表中倒数第%20K%20个结点.md) +- [23. 链表中环的入口结点](23.%20链表中环的入口结点.md) +- [24. 反转链表](24.%20反转链表.md) +- [25. 合并两个排序的链表](25.%20合并两个排序的链表.md) +- [35. 复杂链表的复制](35.%20复杂链表的复制.md) +- [52. 两个链表的第一个公共结点](52.%20两个链表的第一个公共结点.md) + # 树 - [7. 重建二叉树](7.%20重建二叉树.md) @@ -49,18 +61,6 @@ - [55.2 平衡二叉树](55.2%20平衡二叉树.md) - [68. 树中两个节点的最低公共祖先](68.%20树中两个节点的最低公共祖先.md) -# 链表 - -- [6. 从尾到头打印链表](6.%20从尾到头打印链表.md) -- [18.1 在 O(1) 时间内删除链表节点](18.1%20在%20O(1)%20时间内删除链表节点.md) -- [18.2 删除链表中重复的结点](18.2%20删除链表中重复的结点.md) -- [22. 链表中倒数第 K 个结点](22.%20链表中倒数第%20K%20个结点.md) -- [23. 链表中环的入口结点](23.%20链表中环的入口结点.md) -- [24. 反转链表](24.%20反转链表.md) -- [25. 合并两个排序的链表](25.%20合并两个排序的链表.md) -- [35. 复杂链表的复制](35.%20复杂链表的复制.md) -- [52. 两个链表的第一个公共结点](52.%20两个链表的第一个公共结点.md) - # 贪心思想 - [14. 剪绳子](14.%20剪绳子.md) diff --git a/docs/notes/剑指 Offer 题解 - 目录2.md b/docs/notes/剑指 Offer 题解 - 目录2.md index c3bd0656..c2c0f2bc 100644 --- a/docs/notes/剑指 Offer 题解 - 目录2.md +++ b/docs/notes/剑指 Offer 题解 - 目录2.md @@ -30,6 +30,18 @@ - [58.1 翻转单词顺序列](notes/58.1%20翻转单词顺序列.md) - [58.2 左旋转字符串](notes/58.2%20左旋转字符串.md) +# 链表 + +- [6. 从尾到头打印链表](notes/6.%20从尾到头打印链表.md) +- [18.1 在 O(1) 时间内删除链表节点](notes/18.1%20在%20O(1)%20时间内删除链表节点.md) +- [18.2 删除链表中重复的结点](notes/18.2%20删除链表中重复的结点.md) +- [22. 链表中倒数第 K 个结点](notes/22.%20链表中倒数第%20K%20个结点.md) +- [23. 链表中环的入口结点](notes/23.%20链表中环的入口结点.md) +- [24. 反转链表](notes/24.%20反转链表.md) +- [25. 合并两个排序的链表](notes/25.%20合并两个排序的链表.md) +- [35. 复杂链表的复制](notes/35.%20复杂链表的复制.md) +- [52. 两个链表的第一个公共结点](notes/52.%20两个链表的第一个公共结点.md) + # 树 - [7. 重建二叉树](notes/7.%20重建二叉树.md) @@ -49,18 +61,6 @@ - [55.2 平衡二叉树](notes/55.2%20平衡二叉树.md) - [68. 树中两个节点的最低公共祖先](notes/68.%20树中两个节点的最低公共祖先.md) -# 链表 - -- [6. 从尾到头打印链表](notes/6.%20从尾到头打印链表.md) -- [18.1 在 O(1) 时间内删除链表节点](notes/18.1%20在%20O(1)%20时间内删除链表节点.md) -- [18.2 删除链表中重复的结点](notes/18.2%20删除链表中重复的结点.md) -- [22. 链表中倒数第 K 个结点](notes/22.%20链表中倒数第%20K%20个结点.md) -- [23. 链表中环的入口结点](notes/23.%20链表中环的入口结点.md) -- [24. 反转链表](notes/24.%20反转链表.md) -- [25. 合并两个排序的链表](notes/25.%20合并两个排序的链表.md) -- [35. 复杂链表的复制](notes/35.%20复杂链表的复制.md) -- [52. 两个链表的第一个公共结点](notes/52.%20两个链表的第一个公共结点.md) - # 贪心思想 - [14. 剪绳子](notes/14.%20剪绳子.md) diff --git a/notes/26. 树的子结构.md b/notes/26. 树的子结构.md index 7fd34ab3..c5c31e50 100644 --- a/notes/26. 树的子结构.md +++ b/notes/26. 树的子结构.md @@ -1,6 +1,8 @@ # 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&from=cyc_github) +## 题目链接 + +[牛客网](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) ## 题目描述 diff --git a/notes/57.2 和为 S 的连续正数序列.md b/notes/57.2 和为 S 的连续正数序列.md index 6f71a13d..5d9f1122 100644 --- a/notes/57.2 和为 S 的连续正数序列.md +++ b/notes/57.2 和为 S 的连续正数序列.md @@ -1,12 +1,12 @@ # 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&from=cyc_github) - ## 题目描述 -输出所有和为 S 的连续正数序列。 +[牛客网](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) -例如和为 100 的连续序列有: +## 题目描述 + +输出所有和为 S 的连续正数序列。例如和为 100 的连续序列有: ``` [9, 10, 11, 12, 13, 14, 15, 16] diff --git a/notes/58.1 翻转单词顺序列.md b/notes/58.1 翻转单词顺序列.md index a22cfbcf..b221a77b 100644 --- a/notes/58.1 翻转单词顺序列.md +++ b/notes/58.1 翻转单词顺序列.md @@ -1,6 +1,8 @@ # 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&from=cyc_github) +## 题目描述 + +[牛客网](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) ## 题目描述 @@ -14,9 +16,9 @@ Output: ## 解题思路 -题目应该有一个隐含条件,就是不能用额外的空间。虽然 Java 的题目输入参数为 String 类型,需要先创建一个字符数组使得空间复杂度为 O(N),但是正确的参数类型应该和原书一样,为字符数组,并且只能使用该字符数组的空间。任何使用了额外空间的解法在面试时都会大打折扣,包括递归解法。 +先旋转每个单词,再旋转整个字符串。 -正确的解法应该是和书上一样,先旋转每个单词,再旋转整个字符串。 +题目应该有一个隐含条件,就是不能用额外的空间。虽然 Java 的题目输入参数为 String 类型,需要先创建一个字符数组使得空间复杂度为 O(N),但是正确的参数类型应该和原书一样,为字符数组,并且只能使用该字符数组的空间。任何使用了额外空间的解法在面试时都会大打折扣,包括递归解法。 ```java public String ReverseSentence(String str) { diff --git a/notes/58.2 左旋转字符串.md b/notes/58.2 左旋转字符串.md index a2a7d312..77b6db64 100644 --- a/notes/58.2 左旋转字符串.md +++ b/notes/58.2 左旋转字符串.md @@ -1,6 +1,8 @@ # 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&from=cyc_github) +## 题目链接 + +[牛客网](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) ## 题目描述 diff --git a/notes/剑指 Offer 题解 - 目录.md b/notes/剑指 Offer 题解 - 目录.md index 83cf0926..ed67ac89 100644 --- a/notes/剑指 Offer 题解 - 目录.md +++ b/notes/剑指 Offer 题解 - 目录.md @@ -30,6 +30,18 @@ - [58.1 翻转单词顺序列](58.1%20翻转单词顺序列.md) - [58.2 左旋转字符串](58.2%20左旋转字符串.md) +# 链表 + +- [6. 从尾到头打印链表](6.%20从尾到头打印链表.md) +- [18.1 在 O(1) 时间内删除链表节点](18.1%20在%20O(1)%20时间内删除链表节点.md) +- [18.2 删除链表中重复的结点](18.2%20删除链表中重复的结点.md) +- [22. 链表中倒数第 K 个结点](22.%20链表中倒数第%20K%20个结点.md) +- [23. 链表中环的入口结点](23.%20链表中环的入口结点.md) +- [24. 反转链表](24.%20反转链表.md) +- [25. 合并两个排序的链表](25.%20合并两个排序的链表.md) +- [35. 复杂链表的复制](35.%20复杂链表的复制.md) +- [52. 两个链表的第一个公共结点](52.%20两个链表的第一个公共结点.md) + # 树 - [7. 重建二叉树](7.%20重建二叉树.md) @@ -49,18 +61,6 @@ - [55.2 平衡二叉树](55.2%20平衡二叉树.md) - [68. 树中两个节点的最低公共祖先](68.%20树中两个节点的最低公共祖先.md) -# 链表 - -- [6. 从尾到头打印链表](6.%20从尾到头打印链表.md) -- [18.1 在 O(1) 时间内删除链表节点](18.1%20在%20O(1)%20时间内删除链表节点.md) -- [18.2 删除链表中重复的结点](18.2%20删除链表中重复的结点.md) -- [22. 链表中倒数第 K 个结点](22.%20链表中倒数第%20K%20个结点.md) -- [23. 链表中环的入口结点](23.%20链表中环的入口结点.md) -- [24. 反转链表](24.%20反转链表.md) -- [25. 合并两个排序的链表](25.%20合并两个排序的链表.md) -- [35. 复杂链表的复制](35.%20复杂链表的复制.md) -- [52. 两个链表的第一个公共结点](52.%20两个链表的第一个公共结点.md) - # 贪心思想 - [14. 剪绳子](14.%20剪绳子.md) diff --git a/notes/剑指 Offer 题解 - 目录2.md b/notes/剑指 Offer 题解 - 目录2.md index c3bd0656..c2c0f2bc 100644 --- a/notes/剑指 Offer 题解 - 目录2.md +++ b/notes/剑指 Offer 题解 - 目录2.md @@ -30,6 +30,18 @@ - [58.1 翻转单词顺序列](notes/58.1%20翻转单词顺序列.md) - [58.2 左旋转字符串](notes/58.2%20左旋转字符串.md) +# 链表 + +- [6. 从尾到头打印链表](notes/6.%20从尾到头打印链表.md) +- [18.1 在 O(1) 时间内删除链表节点](notes/18.1%20在%20O(1)%20时间内删除链表节点.md) +- [18.2 删除链表中重复的结点](notes/18.2%20删除链表中重复的结点.md) +- [22. 链表中倒数第 K 个结点](notes/22.%20链表中倒数第%20K%20个结点.md) +- [23. 链表中环的入口结点](notes/23.%20链表中环的入口结点.md) +- [24. 反转链表](notes/24.%20反转链表.md) +- [25. 合并两个排序的链表](notes/25.%20合并两个排序的链表.md) +- [35. 复杂链表的复制](notes/35.%20复杂链表的复制.md) +- [52. 两个链表的第一个公共结点](notes/52.%20两个链表的第一个公共结点.md) + # 树 - [7. 重建二叉树](notes/7.%20重建二叉树.md) @@ -49,18 +61,6 @@ - [55.2 平衡二叉树](notes/55.2%20平衡二叉树.md) - [68. 树中两个节点的最低公共祖先](notes/68.%20树中两个节点的最低公共祖先.md) -# 链表 - -- [6. 从尾到头打印链表](notes/6.%20从尾到头打印链表.md) -- [18.1 在 O(1) 时间内删除链表节点](notes/18.1%20在%20O(1)%20时间内删除链表节点.md) -- [18.2 删除链表中重复的结点](notes/18.2%20删除链表中重复的结点.md) -- [22. 链表中倒数第 K 个结点](notes/22.%20链表中倒数第%20K%20个结点.md) -- [23. 链表中环的入口结点](notes/23.%20链表中环的入口结点.md) -- [24. 反转链表](notes/24.%20反转链表.md) -- [25. 合并两个排序的链表](notes/25.%20合并两个排序的链表.md) -- [35. 复杂链表的复制](notes/35.%20复杂链表的复制.md) -- [52. 两个链表的第一个公共结点](notes/52.%20两个链表的第一个公共结点.md) - # 贪心思想 - [14. 剪绳子](notes/14.%20剪绳子.md)