<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[明觉]]></title><description><![CDATA[你若盛开，清风徐来；你若精彩，天自安排。]]></description><link>https://blog.csdn.net/wuwang01</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; wuwang01]]></copyright><item><title><![CDATA[LeetCode239. 滑动窗口最大值(滑动窗口)]]></title><link>https://blog.csdn.net/wuwang01/article/details/89300650</link><guid>https://blog.csdn.net/wuwang01/article/details/89300650</guid><author>wuwang01</author><pubDate>Sun, 14 Apr 2019 19:46:57 +0800</pubDate><description><![CDATA[给定一个数组 nums，有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口 k 内的数字。滑动窗口每次只向右移动一位。
返回滑动窗口最大值。
示例:
输入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3
输出: [3,3,5,5,6,7] 
解释: 

  滑动窗口的位置                最大值
--------------...]]></description><category></category></item><item><title><![CDATA[LeetCode76. 最小覆盖子串(滑动窗口)]]></title><link>https://blog.csdn.net/wuwang01/article/details/89296241</link><guid>https://blog.csdn.net/wuwang01/article/details/89296241</guid><author>wuwang01</author><pubDate>Sun, 14 Apr 2019 14:36:47 +0800</pubDate><description><![CDATA[给定一个字符串，请你找出其中不含有重复字符的 最长子串 的长度。
示例 1:
输入: "abcabcbb"
输出: 3 
解释: 因为无重复字符的最长子串是 "abc"，所以其长度为 3。

示例 2:
输入: "pwwkew"
输出: 3
解释: 因为无重复字符的最长子串是 "wke"，所以其长度为 3。
     请注意，你的答案必须是 子串 的长度，"pwke" 是一个子序列，不是子串。

...]]></description><category></category></item><item><title><![CDATA[LeetCode32. 最长有效括号（动态规划、滑动窗口）]]></title><link>https://blog.csdn.net/wuwang01/article/details/89296152</link><guid>https://blog.csdn.net/wuwang01/article/details/89296152</guid><author>wuwang01</author><pubDate>Sun, 14 Apr 2019 14:29:26 +0800</pubDate><description><![CDATA[给定一个只包含 ‘(’ 和 ‘)’ 的字符串，找出最长的包含有效括号的子串的长度。
示例 1:
输入: "(()"
输出: 2
解释: 最长有效括号子串为 "()"

示例 2:
输入: ")()())"
输出: 4
解释: 最长有效括号子串为 "()()"

有两种解答方式。
第一种，滑动窗口。
对字符串进行括号闭合验证，记录最值。
然后再进行一次对称变换，进行验证，两次取最值，就是字符串的最长...]]></description><category></category></item><item><title><![CDATA[LeetCode37. 解数独]]></title><link>https://blog.csdn.net/wuwang01/article/details/88927987</link><guid>https://blog.csdn.net/wuwang01/article/details/88927987</guid><author>wuwang01</author><pubDate>Sun, 31 Mar 2019 13:50:25 +0800</pubDate><description><![CDATA[编写一个程序，通过已填充的空格来解决数独问题。
一个数独的解法需遵循如下规则：

数字 1-9 在每一行只能出现一次。
数字 1-9 在每一列只能出现一次。
数字 1-9 在每一个以粗实线分隔的 3x3宫内只能出现一次。

空白格用 ‘.’ 表示。

一个数独。

答案被标成红色。
Note:

给定的数独序列只包含数字 1-9 和字符 ‘.’ 。
你可以假设给定的数独只有唯一解。
给定数独永远是...]]></description><category></category></item><item><title><![CDATA[LeetCode75. 颜色分类]]></title><link>https://blog.csdn.net/wuwang01/article/details/88925115</link><guid>https://blog.csdn.net/wuwang01/article/details/88925115</guid><author>wuwang01</author><pubDate>Sun, 31 Mar 2019 10:28:28 +0800</pubDate><description><![CDATA[给定一个包含红色、白色和蓝色，一共 n 个元素的数组，原地对它们进行排序，使得相同颜色的元素相邻，并按照红色、白色、蓝色顺序排列。
此题中，我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。
注意:
不能使用代码库中的排序函数来解决这道题。
示例:
输入: [2,0,2,1,1,0]
输出: [0,0,1,1,2,2]

进阶：

一个直观的解决方案是使用计数排序的两趟扫描算法。 首先，迭...]]></description><category></category></item><item><title><![CDATA[LeetCode74. 搜索二维矩阵]]></title><link>https://blog.csdn.net/wuwang01/article/details/88909592</link><guid>https://blog.csdn.net/wuwang01/article/details/88909592</guid><author>wuwang01</author><pubDate>Sat, 30 Mar 2019 11:35:36 +0800</pubDate><description><![CDATA[编写一个高效的算法来判断 m x n 矩阵中，是否存在一个目标值。该矩阵具有如下特性：

每行中的整数从左到右按升序排列。
每行的第一个整数大于前一行的最后一个整数。

示例 1:
输入:
matrix = [
  [1,   3,  5,  7],
  [10, 11, 16, 20],
  [23, 30, 34, 50]
]
target = 3
输出: true

二分查找,ac,100%...]]></description><category></category></item><item><title><![CDATA[LeetCode73. 矩阵置零]]></title><link>https://blog.csdn.net/wuwang01/article/details/88894044</link><guid>https://blog.csdn.net/wuwang01/article/details/88894044</guid><author>wuwang01</author><pubDate>Fri, 29 Mar 2019 15:19:56 +0800</pubDate><description><![CDATA[给定一个 m x n 的矩阵，如果一个元素为 0，则将其所在行和列的所有元素都设为 0。请使用原地算法。
关于原地算法，名字倒是挺响，https://baike.baidu.com/item/原地算法
示例 1:
输入: 
[
  [1,1,1],
  [1,0,1],
  [1,1,1]
]
输出: 
[
  [1,0,1],
  [0,0,0],
  [1,0,1]
]

进阶:

一个直接的...]]></description><category></category></item><item><title><![CDATA[LeetCode72. 编辑距离]]></title><link>https://blog.csdn.net/wuwang01/article/details/88891005</link><guid>https://blog.csdn.net/wuwang01/article/details/88891005</guid><author>wuwang01</author><pubDate>Fri, 29 Mar 2019 13:54:17 +0800</pubDate><description><![CDATA[给定两个单词 word1 和 word2，计算出将 word1 转换成 word2 所使用的最少操作数 。
你可以对一个单词进行如下三种操作：

插入一个字符
删除一个字符
替换一个字符

示例 1:
输入: word1 = "horse", word2 = "ros"
输出: 3
解释: 
horse -&gt; rorse (将 'h' 替换为 'r')
rorse -&gt; rose (删...]]></description><category></category></item><item><title><![CDATA[LeetCode71. 简化路径]]></title><link>https://blog.csdn.net/wuwang01/article/details/88890892</link><guid>https://blog.csdn.net/wuwang01/article/details/88890892</guid><author>wuwang01</author><pubDate>Fri, 29 Mar 2019 13:48:44 +0800</pubDate><description><![CDATA[以 Unix 风格给出一个文件的绝对路径，你需要简化它。或者换句话说，将其转换为规范路径。
在 Unix 风格的文件系统中，一个点（.）表示当前目录本身；此外，两个点 （…） 表示将目录切换到上一级（指向父目录）；两者都可以是复杂相对路径的组成部分。更多信息请参阅：Linux / Unix中的绝对路径 vs 相对路径
请注意，返回的规范路径必须始终以斜杠 / 开头，并且两个目录名之间必须只有一个斜...]]></description><category></category></item><item><title><![CDATA[LeetCode69. x 的平方根]]></title><link>https://blog.csdn.net/wuwang01/article/details/88869220</link><guid>https://blog.csdn.net/wuwang01/article/details/88869220</guid><author>wuwang01</author><pubDate>Thu, 28 Mar 2019 14:56:52 +0800</pubDate><description><![CDATA[实现 int sqrt(int x) 函数。
计算并返回 x 的平方根，其中 x 是非负整数。
由于返回类型是整数，结果只保留整数的部分，小数部分将被舍去。
示例 1:
输入: 4
输出: 2

此题的思想是牛顿迭代法，当然二分也可以
最神奇的还是平方根倒数速算法，参见 https://www.zhihu.com/question/22018894/answer/20039559
/**
 * 6...]]></description><category></category></item><item><title><![CDATA[LeetCode68. 文本左右对齐]]></title><link>https://blog.csdn.net/wuwang01/article/details/88861190</link><guid>https://blog.csdn.net/wuwang01/article/details/88861190</guid><author>wuwang01</author><pubDate>Thu, 28 Mar 2019 08:41:23 +0800</pubDate><description><![CDATA[给定一个单词数组和一个长度 maxWidth，重新排版单词，使其成为每行恰好有 maxWidth 个字符，且左右两端对齐的文本。
你应该使用“贪心算法”来放置给定的单词；也就是说，尽可能多地往每行中放置单词。必要时可用空格 ’ ’ 填充，使得每行恰好有 maxWidth 个字符。
要求尽可能均匀分配单词间的空格数量。如果某一行单词间的空格不能均匀分配，则左侧放置的空格数要多于右侧的空格数。
文本的...]]></description><category></category></item><item><title><![CDATA[LeetCode63. 不同路径]]></title><link>https://blog.csdn.net/wuwang01/article/details/88383677</link><guid>https://blog.csdn.net/wuwang01/article/details/88383677</guid><author>wuwang01</author><pubDate>Sun, 10 Mar 2019 20:53:22 +0800</pubDate><description><![CDATA[一个机器人位于一个 m x n 网格的左上角 （起始点在下图中标记为“Start” ）。
机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角（在下图中标记为“Finish”）。
现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径？
网格中的障碍物和空位置分别用 1 和 0 来表示。
说明：m 和 n 的值均不超过 100。

网格中的障碍物和空位置分别用 1 和 0 来...]]></description><category></category></item><item><title><![CDATA[LeetCode62. 不同路径]]></title><link>https://blog.csdn.net/wuwang01/article/details/88258400</link><guid>https://blog.csdn.net/wuwang01/article/details/88258400</guid><author>wuwang01</author><pubDate>Wed, 06 Mar 2019 21:44:56 +0800</pubDate><description><![CDATA[一个机器人位于一个 m x n 网格的左上角 （起始点在下图中标记为“Start” ）。
机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角（在下图中标记为“Finish”）。
问总共有多少条不同的路径？
例如，上图是一个7 x 3 的网格。有多少可能的路径？
说明：m 和 n 的值均不超过 100。
示例 1:
输入: m = 3, n = 2
输出: 3
解释:
从左上角开始，总共...]]></description><category></category></item><item><title><![CDATA[LeetCode61. 旋转链表]]></title><link>https://blog.csdn.net/wuwang01/article/details/88256521</link><guid>https://blog.csdn.net/wuwang01/article/details/88256521</guid><author>wuwang01</author><pubDate>Wed, 06 Mar 2019 21:10:23 +0800</pubDate><description><![CDATA[61. 旋转链表
给定一个链表，旋转链表，将链表每个节点向右移动 k 个位置，其中 k 是非负数。
示例 1:
输入: 1-&amp;amp;gt;2-&amp;amp;gt;3-&amp;amp;gt;4-&amp;amp;gt;5-&amp;amp;gt;NULL, k = 2
输出: 4-&amp;amp;gt;5-&amp;amp;gt;1-&amp;amp;gt;2-&amp;amp;gt;3-&amp;amp;gt;NULL
解释:
向右旋转 1 步: 5-&amp;amp;gt;1-&amp;]]></description><category></category></item><item><title><![CDATA[LeetCode60. 第k个排列]]></title><link>https://blog.csdn.net/wuwang01/article/details/87896372</link><guid>https://blog.csdn.net/wuwang01/article/details/87896372</guid><author>wuwang01</author><pubDate>Sat, 23 Feb 2019 20:01:26 +0800</pubDate><description><![CDATA[给出集合 [1,2,3,…,n]，其所有元素共有 n! 种排列。
按大小顺序列出所有排列情况，并一一标记，当 n = 3 时, 所有排列如下：
&amp;quot;123&amp;quot;
&amp;quot;132&amp;quot;
&amp;quot;213&amp;quot;
&amp;quot;231&amp;quot;
&amp;quot;312&amp;quot;
&amp;quot;321&amp;quot;

给定 n 和 k，返回第 k 个排列。
说明：

给定 n 的范围是 [1, ]]></description><category></category></item><item><title><![CDATA[LeetCode59. 螺旋矩阵 II]]></title><link>https://blog.csdn.net/wuwang01/article/details/87896267</link><guid>https://blog.csdn.net/wuwang01/article/details/87896267</guid><author>wuwang01</author><pubDate>Sat, 23 Feb 2019 19:53:09 +0800</pubDate><description><![CDATA[给定一个正整数 n，生成一个包含 1 到 n2 所有元素，且元素按顺时针顺序螺旋排列的正方形矩阵。
示例:
输入: 3
输出:
[
 [ 1, 2, 3 ],
 [ 8, 9, 4 ],
 [ 7, 6, 5 ]
]

class Solution {
	public int[][] generateMatrix(int n) {
		int[][] result = new int[n][n];...]]></description><category></category></item><item><title><![CDATA[LeetCode58. 最后一个单词的长度]]></title><link>https://blog.csdn.net/wuwang01/article/details/86704804</link><guid>https://blog.csdn.net/wuwang01/article/details/86704804</guid><author>wuwang01</author><pubDate>Wed, 30 Jan 2019 16:15:17 +0800</pubDate><description><![CDATA[class Solution {
	public int lengthOfLastWord(String s) {
		if (s == null)
			return 0;
		int i = s.length() - 1;
		while (i &amp;gt; -1 &amp;amp;&amp;amp; s.charAt(i) == ' ')
			--i;
		int length = 0;
		while (i...]]></description><category></category></item><item><title><![CDATA[LeetCode57. 插入区间]]></title><link>https://blog.csdn.net/wuwang01/article/details/86704530</link><guid>https://blog.csdn.net/wuwang01/article/details/86704530</guid><author>wuwang01</author><pubDate>Wed, 30 Jan 2019 16:01:44 +0800</pubDate><description><![CDATA[和上一题好像没什么区别，所以直接略微修改，是我想的太肤浅了？
class Solution {

	public List&amp;amp;lt;Interval&amp;amp;gt; insert(List&amp;amp;lt;Interval&amp;amp;gt; intervals, Interval newInterval) {
		if (intervals == null)
			return new LinkedList&amp;amp;lt;&amp;amp;gt;()...]]></description><category></category></item><item><title><![CDATA[LeetCode56. 合并区间]]></title><link>https://blog.csdn.net/wuwang01/article/details/86704256</link><guid>https://blog.csdn.net/wuwang01/article/details/86704256</guid><author>wuwang01</author><pubDate>Wed, 30 Jan 2019 15:47:41 +0800</pubDate><description><![CDATA[/**
 * 排序合并
 * 
 * @author wuwang
 *
 */
class Solution {

	public List&amp;lt;Interval&amp;gt; merge(List&amp;lt;Interval&amp;gt; intervals) {
		if (intervals == null || intervals.isEmpty())
			return new LinkedList...]]></description><category></category></item><item><title><![CDATA[LeetCode55. 跳跃游戏]]></title><link>https://blog.csdn.net/wuwang01/article/details/86700365</link><guid>https://blog.csdn.net/wuwang01/article/details/86700365</guid><author>wuwang01</author><pubDate>Wed, 30 Jan 2019 11:04:23 +0800</pubDate><description><![CDATA[
​​​​​​​class Solution {
    public boolean canJump(int[] nums) {
        if (nums == null || nums.length == 0)
            return false;
        int maxstep = 0;
        for (int i = 0; i &amp;lt;= maxst...]]></description><category></category></item></channel></rss>