<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Duan_YZ的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Duan_YZ</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Duan_YZ]]></copyright><item><title><![CDATA[go语言LeeCode刷题记：31. 下一个排列]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/113741737</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/113741737</guid><author>Duan_YZ</author><pubDate>Sun, 07 Feb 2021 15:22:18 +0800</pubDate><description><![CDATA[31. 下一个排列

实现获取下一个排列的函数，算法需要将给定数字序列重新排列成字典序中下一个更大的排列。

如果不存在下一个更大的排列，则将数字重新排列成最小的排列（即升序排列）。

必须原地修改，只允许使用额外常数空间。

示例 1：


输入：nums = [1,2,3]
输出：[1,3,2]


示例 2：


输入：nums = [3,2,1]
输出：[1,2,3]


示例 3：


输入：nums = [1,1,5]
输出：[1,5,1]


示例 4：


输入：nums = [1]...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：30. 串联所有单词的子串]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/113735890</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/113735890</guid><author>Duan_YZ</author><pubDate>Sun, 07 Feb 2021 09:55:15 +0800</pubDate><description><![CDATA[30. 串联所有单词的子串

给定一个字符串s和一些长度相同的单词words。找出s中恰好可以由words中所有单词串联形成的子串的起始位置。

注意子串要与words中的单词完全匹配，中间不能有其他字符，但不需要考虑words中单词串联的顺序。

示例 1：


输入：
  s = "barfoothefoobarman",
  words = ["foo","bar"]
输出：[0,9]
解释：
从索引 0 和 9 开始的子串分别是 "barfoo" 和 "foobar" 。
输出...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：29. 两数相除]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/110822875</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/110822875</guid><author>Duan_YZ</author><pubDate>Mon, 07 Dec 2020 17:14:33 +0800</pubDate><description><![CDATA[29. 两数相除

给定两个整数，被除数dividend和除数divisor。将两数相除，要求不使用乘法、除法和 mod 运算符。

返回被除数dividend除以除数divisor得到的商。

整数除法的结果应当截去（truncate）其小数部分，例如：truncate(8.345) = 8 以及 truncate(-2.7335) = -2

示例1:

输入: dividend = 10, divisor = 3
输出: 3
解释: 10/3 = truncate(3.33333..)...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：28. 实现 strStr()]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/109739786</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/109739786</guid><author>Duan_YZ</author><pubDate>Tue, 17 Nov 2020 11:53:17 +0800</pubDate><description><![CDATA[28. 实现 strStr()

实现strStr()函数。

给定一个haystack 字符串和一个 needle 字符串，在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在，则返回-1。

示例 1:

输入: haystack = "hello", needle = "ll"
输出: 2
示例 2:

输入: haystack = "aaaaa", needle = "bba"
输出: -1
说明:

当needle是空字符串时，我们应当返...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：27. 移除元素]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/109739090</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/109739090</guid><author>Duan_YZ</author><pubDate>Tue, 17 Nov 2020 11:28:46 +0800</pubDate><description><![CDATA[27. 移除元素

给你一个数组 nums和一个值 val，你需要 原地 移除所有数值等于val的元素，并返回移除后数组的新长度。

不要使用额外的数组空间，你必须仅使用 O(1) 额外空间并 原地 修改输入数组。

元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。



示例 1:

给定 nums = [3,2,2,3], val = 3,

函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。

你不需要考虑数组中超出新长度后面的元素。

示例2:

给定 num...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：26. 删除排序数组中的重复项]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/109721224</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/109721224</guid><author>Duan_YZ</author><pubDate>Mon, 16 Nov 2020 14:52:18 +0800</pubDate><description><![CDATA[26. 删除排序数组中的重复项

给定一个排序数组，你需要在 原地 删除重复出现的元素，使得每个元素只出现一次，返回移除后数组的新长度。

不要使用额外的数组空间，你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。

示例1:

给定数组 nums = [1,1,2],

函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。

你不需要考虑数组中超出新长度后面的元素。

示例2:

给定 nums = [0,0,1,1,1,2,2,3,3,4],
...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：25. K 个一组翻转链表]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/109490940</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/109490940</guid><author>Duan_YZ</author><pubDate>Wed, 04 Nov 2020 15:18:36 +0800</pubDate><description><![CDATA[25. K 个一组翻转链表

给你一个链表，每k个节点一组进行翻转，请你返回翻转后的链表。

k是一个正整数，它的值小于或等于链表的长度。

如果节点总数不是k的整数倍，那么请将最后剩余的节点保持原有顺序。

示例：

给你这个链表：1-&gt;2-&gt;3-&gt;4-&gt;5

当k= 2 时，应当返回: 2-&gt;1-&gt;4-&gt;3-&gt;5

当k= 3 时，应当返回: 3-&gt;2-&gt;1-&gt;4-&gt;5

来源：力扣（LeetCode）
链接：ht...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：14. 最长公共前缀]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/86654901</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/86654901</guid><author>Duan_YZ</author><pubDate>Fri, 17 Apr 2020 17:03:25 +0800</pubDate><description><![CDATA[14. 最长公共前缀

编写一个函数来查找字符串数组中的最长公共前缀。

如果不存在公共前缀，返回空字符串&quot;&quot;。

示例1:


输入: [&quot;flower&quot;,&quot;flow&quot;,&quot;flight&quot;]
输出: &quot;fl&quot;


示例2:


输入: [&quot;dog&quot;,&quot;racecar&quot;,&quot;car&quot;]
输出: &quot;&quot;
解释: 输入不存在公共前缀。]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：24. 两两交换链表中的节点]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/102550497</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/102550497</guid><author>Duan_YZ</author><pubDate>Mon, 14 Oct 2019 15:59:09 +0800</pubDate><description><![CDATA[24. 两两交换链表中的节点

给定一个链表，两两交换其中相邻的节点，并返回交换后的链表。

你不能只是单纯的改变节点内部的值，而是需要实际的进行节点交换。



示例:

给定 1-&gt;2-&gt;3-&gt;4, 你应该返回 2-&gt;1-&gt;4-&gt;3

答案：


/**
 * Definition for singly-linked list.
 * type ListN...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：23. 合并K个排序链表]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/102545303</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/102545303</guid><author>Duan_YZ</author><pubDate>Mon, 14 Oct 2019 12:04:51 +0800</pubDate><description><![CDATA[23. 合并K个排序链表

合并k个排序链表，返回合并后的排序链表。请分析和描述算法的复杂度。

示例:

输入:
[
1-&gt;4-&gt;5,
1-&gt;3-&gt;4,
2-&gt;6
]
输出: 1-&gt;1-&gt;2-&gt;3-&gt;4-&gt;4-&gt;5-&gt;6

答案：


/**
 * Definition for singly-linked l...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：22. 括号生成]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/102544948</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/102544948</guid><author>Duan_YZ</author><pubDate>Mon, 14 Oct 2019 11:42:43 +0800</pubDate><description><![CDATA[22. 括号生成

给出n代表生成括号的对数，请你写出一个函数，使其能够生成所有可能的并且有效的括号组合。

例如，给出n = 3，生成结果为：

[
 "((()))",
 "(()())",
 "(())()",
 "()(())",
 "()()()"
]

答案：


func generateParenthesis(n int) []string {
	var resul...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：21. 合并两个有序链表]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/102517391</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/102517391</guid><author>Duan_YZ</author><pubDate>Sat, 12 Oct 2019 11:37:28 +0800</pubDate><description><![CDATA[21. 合并两个有序链表

将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。

示例：

输入：1-&gt;2-&gt;4, 1-&gt;3-&gt;4
输出：1-&gt;1-&gt;2-&gt;3-&gt;4-&gt;4

答案：


/**
 * Definition for singly-linked list.
 * type ListNode...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：20. 有效的括号]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/97029743</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/97029743</guid><author>Duan_YZ</author><pubDate>Tue, 23 Jul 2019 20:18:30 +0800</pubDate><description><![CDATA[20. 有效的括号

给定一个只包括 '('，')'，'{'，'}'，'['，']'的字符串，判断字符串是否有效。

有效字符串需满足：

左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
注意空字符串可被认为是有效字符串。

示例 1:

输入: "()"
输出: true示例2:

输入: "()[]{}"
输出: true示例3:

输入: "(]"
输出: false...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：19. 删除链表的倒数第N个节点]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/96491207</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/96491207</guid><author>Duan_YZ</author><pubDate>Fri, 19 Jul 2019 18:49:21 +0800</pubDate><description><![CDATA[19. 删除链表的倒数第N个节点

给定一个链表，删除链表的倒数第n个节点，并且返回链表的头结点。

示例：

给定一个链表: 1-&gt;2-&gt;3-&gt;4-&gt;5, 和 n = 2.

当删除了倒数第二个节点后，链表变为 1-&gt;2-&gt;3-&gt;5.说明：

给定的 n保证是有效的。

进阶：

你能尝试使用一趟扫描实现吗？

答案：


/**
 * Defin...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：18. 四数之和]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/90751884</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/90751884</guid><author>Duan_YZ</author><pubDate>Mon, 03 Jun 2019 14:42:50 +0800</pubDate><description><![CDATA[18. 四数之和

给定一个包含n个整数的数组nums和一个目标值target，判断nums中是否存在四个元素a，b，c和d，使得a+b+c+d的值与target相等？找出所有满足条件且不重复的四元组。

注意：

答案中不可以包含重复的四元组。

示例：


给定数组 nums = [1, 0, -1, 0, -2, 2]，和 target = 0。

...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：17. 电话号码的字母组合]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/90178473</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/90178473</guid><author>Duan_YZ</author><pubDate>Mon, 13 May 2019 18:28:27 +0800</pubDate><description><![CDATA[17. 电话号码的字母组合

给定一个仅包含数字2-9的字符串，返回所有它能表示的字母组合。

给出数字到字母的映射如下（与电话按键相同）。注意 1 不对应任何字母。



示例:


输入："23"
输出：["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"].


说明:
尽管上面的答案是按字典序排列的，但是你可以任意选择答案输出的顺序...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：16. 最接近的三数之和]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/90050733</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/90050733</guid><author>Duan_YZ</author><pubDate>Fri, 10 May 2019 01:25:00 +0800</pubDate><description><![CDATA[16. 最接近的三数之和

给定一个包括n个整数的数组nums和 一个目标值target。找出nums中的三个整数，使得它们的和与target最接近。返回这三个数的和。假定每组输入只存在唯一答案。


例如，给定数组 nums = [-1，2，1，-4], 和 target = 1.

与 target 最接近的三个数的和为 2. (-1 + 2 + 1 = 2).

答案：

...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：15. 三数之和]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/88073076</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/88073076</guid><author>Duan_YZ</author><pubDate>Sat, 02 Mar 2019 11:15:18 +0800</pubDate><description><![CDATA[15. 三数之和

给定一个包含n个整数的数组nums，判断nums中是否存在三个元素a，b，c ，使得a + b + c =0 ？找出所有满足条件且不重复的三元组。

注意：答案中不可以包含重复的三元组。


例如, 给定数组 nums = [-1, 0, 1, 2, -1, -4]，

满足要求的三元组集合为：
[
  [-1, 0, 1],
  [-1, -1, 2]
]

...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：13. 罗马数字转整数]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/86605556</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/86605556</guid><author>Duan_YZ</author><pubDate>Wed, 23 Jan 2019 10:22:40 +0800</pubDate><description><![CDATA[13. 罗马数字转整数

罗马数字包含以下七种字符: I， V， X， L，C，D 和 M。


字符          数值
I             1
V             5
X             10
L             50
C             100
D             500
M             1000

例如， 罗马数字 2 写做 ...]]></description><category></category></item><item><title><![CDATA[go语言LeeCode刷题记：12. 整数转罗马数字]]></title><link>https://blog.youkuaiyun.com/Duan_YZ/article/details/86605095</link><guid>https://blog.youkuaiyun.com/Duan_YZ/article/details/86605095</guid><author>Duan_YZ</author><pubDate>Wed, 23 Jan 2019 10:02:41 +0800</pubDate><description><![CDATA[12. 整数转罗马数字

罗马数字包含以下七种字符： I， V， X， L，C，D 和 M。


字符          数值
I             1
V             5
X             10
L             50
C             100
D             500
M             1000

例如， 罗马数字 2 写做 ...]]></description><category></category></item></channel></rss>