<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[acticn的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/acticn</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; acticn]]></copyright><item><title><![CDATA[C++ string 用法]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104150025</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104150025</guid><author>acticn</author><pubDate>Sun, 02 Feb 2020 21:47:32 +0800</pubDate><description><![CDATA[http://c.biancheng.net/view/400.html

]]></description><category></category></item><item><title><![CDATA[53. 最大子序和]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104108443</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104108443</guid><author>acticn</author><pubDate>Wed, 29 Jan 2020 17:28:37 +0800</pubDate><description><![CDATA[给定一个整数数组 nums&nbsp;，找到一个具有最大和的连续子数组（子数组最少包含一个元素），返回其最大和。
示例:
输入: [-2,1,-3,4,-1,2,1,-5,4],
输出: 6
解释:&nbsp;连续子数组&nbsp;[4,-1,2,1] 的和最大，为&nbsp;6。

进阶:
如果你已经实现复杂度为 O(n) 的解法，尝试使用更为精妙的分治法求解。

思路：
1.动态规划
2.分治...]]></description><category></category></item><item><title><![CDATA[121. 买卖股票的最佳时机]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104099615</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104099615</guid><author>acticn</author><pubDate>Tue, 28 Jan 2020 14:37:17 +0800</pubDate><description><![CDATA[给定一个数组，它的第&nbsp;i 个元素是一支给定股票第 i 天的价格。
如果你最多只允许完成一笔交易（即买入和卖出一支股票），设计一个算法来计算你所能获取的最大利润。
注意你不能在买入股票前卖出股票。
示例 1:
输入: [7,1,5,3,6,4]
输出: 5
解释: 在第 2 天（股票价格 = 1）的时候买入，在第 5 天（股票价格 = 6）的时候卖出，最大利润 = 6-1 = 5 。
  ...]]></description><category></category></item><item><title><![CDATA[437. 路径总和 III]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104098623</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104098623</guid><author>acticn</author><pubDate>Tue, 28 Jan 2020 12:08:47 +0800</pubDate><description><![CDATA[给定一个二叉树，它的每个结点都存放着一个整数值。
找出路径和等于给定数值的路径总数。
路径不需要从根节点开始，也不需要在叶子节点结束，但是路径方向必须是向下的（只能从父节点到子节点）。
二叉树不超过1000个节点，且节点数值范围是 [-1000000,1000000] 的整数。
示例：
root = [10,5,-3,3,2,null,11,3,-2,null,1], sum = 8

     ...]]></description><category></category></item><item><title><![CDATA[448. 找到所有数组中消失的数字]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104095585</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104095585</guid><author>acticn</author><pubDate>Tue, 28 Jan 2020 12:05:49 +0800</pubDate><description><![CDATA[给定一个范围在&nbsp; 1 ≤ a[i] ≤ n (&nbsp;n = 数组大小 ) 的 整型数组，数组中的元素一些出现了两次，另一些只出现一次。
找到所有在 [1, n] 范围之间没有出现在数组中的数字。
您能在不使用额外空间且时间复杂度为O(n)的情况下完成这个任务吗? 你可以假定返回的数组不算在额外空间内。
示例:
输入:
[4,3,2,7,8,2,3,1]

输出:
[5,6]


思...]]></description><category></category></item><item><title><![CDATA[283. 移动零]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104095340</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104095340</guid><author>acticn</author><pubDate>Mon, 27 Jan 2020 20:36:04 +0800</pubDate><description><![CDATA[给定一个数组 nums，编写一个函数将所有 0 移动到数组的末尾，同时保持非零元素的相对顺序。
示例:
输入: [0,1,0,3,12]
输出: [1,3,12,0,0]
说明:

	必须在原数组上操作，不能拷贝额外的数组。
	尽量减少操作次数。


思路：
1.遍历，同时数0的个数sum，对每个不为0的数向前移动sum位，最后根据sum的个数填充后面。
2.满指针配合快指针，快指针指向不为0则放...]]></description><category></category></item><item><title><![CDATA[21. 合并两个有序链表]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104093044</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104093044</guid><author>acticn</author><pubDate>Mon, 27 Jan 2020 15:21:03 +0800</pubDate><description><![CDATA[将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。&nbsp;
示例：
输入：1-&gt;2-&gt;4, 1-&gt;3-&gt;4
输出：1-&gt;1-&gt;2-&gt;3-&gt;4-&gt;4


思路：
两个指针分别指向待比较的结点，不断比较插入到新的链表中，直到其中一个链表为空，将另一个链表剩下的所有结点全部插入到新链表，返回新链表。
题解...]]></description><category></category></item><item><title><![CDATA[94. 二叉树的中序遍历]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104092947</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104092947</guid><author>acticn</author><pubDate>Mon, 27 Jan 2020 15:09:25 +0800</pubDate><description><![CDATA[给定一个二叉树，返回它的中序&nbsp;遍历。
示例:
输入: [1,null,2,3]
   1
    \
     2
    /
   3

输出: [1,3,2]
进阶:&nbsp;递归算法很简单，你可以通过迭代算法完成吗？

思路：
1.递归中序遍历
2.迭代中序遍历
3.莫里斯遍历
题解：
1.
 //递归中序遍历
class Solution {
public:
    vecto...]]></description><category></category></item><item><title><![CDATA[101. 对称二叉树]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104088293</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104088293</guid><author>acticn</author><pubDate>Sun, 26 Jan 2020 17:24:21 +0800</pubDate><description><![CDATA[给定一个二叉树，检查它是否是镜像对称的。
例如，二叉树&nbsp;[1,2,2,3,4,4,3] 是对称的。
    1
   / \
  2   2
 / \ / \
3  4 4  3

但是下面这个&nbsp;[1,2,2,null,3,null,3] 则不是镜像对称的:
    1
   / \
  2   2
   \   \
   3    3

说明:
如果你可以运用递归和迭代两种方...]]></description><category></category></item><item><title><![CDATA[538. 把二叉搜索树转换为累加树]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104087933</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104087933</guid><author>acticn</author><pubDate>Sun, 26 Jan 2020 16:23:48 +0800</pubDate><description><![CDATA[给定一个二叉搜索树（Binary Search Tree），把它转换成为累加树（Greater Tree)，使得每个节点的值是原来的节点值加上所有大于它的节点值之和。
例如：
输入: 二叉搜索树:
              5
            /   \
           2     13

输出: 转换为累加树:
             18
            /   \
...]]></description><category></category></item><item><title><![CDATA[136. 只出现一次的数字]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104083802</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104083802</guid><author>acticn</author><pubDate>Sat, 25 Jan 2020 16:47:06 +0800</pubDate><description><![CDATA[给定一个非空整数数组，除了某个元素只出现一次以外，其余每个元素均出现两次。找出那个只出现了一次的元素。
说明：
你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗？
示例 1:

输入: [2,2,1]
输出: 1

示例 2:

输入: [4,1,2,1,2]
输出: 4

思路：

遍历整个数组，如果发现新出现的元素就加入另一个列表，如果在列表中已经存在就删掉列表中的该元素，最后剩...]]></description><category></category></item><item><title><![CDATA[C++ set]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104083791</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104083791</guid><author>acticn</author><pubDate>Sat, 25 Jan 2020 16:38:59 +0800</pubDate><description><![CDATA[声明：
set&lt;int&gt; s;

插入元素：(不会出现重复元素)
s.insert(233);

查找元素：(返回迭代器，没有找到则返回s.end())
s.find(233);

删除元素：(删除指定元素)
s.erase(233);


...]]></description><category></category></item><item><title><![CDATA[206. 反转链表]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104079685</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104079685</guid><author>acticn</author><pubDate>Fri, 24 Jan 2020 11:33:03 +0800</pubDate><description><![CDATA[反转一个单链表。
示例:

输入: 1-&gt;2-&gt;3-&gt;4-&gt;5-&gt;NULL
输出: 5-&gt;4-&gt;3-&gt;2-&gt;1-&gt;NULL

进阶:
你可以迭代或递归地反转链表。你能否用两种方法解决这道题？
思路：
&nbsp;&nbsp;&nbsp;&nbsp;递归法：

递归目的：将输入链表反转同时返回头指针。
递归过程：将当前节点head的下一个节...]]></description><category></category></item><item><title><![CDATA[104. 二叉树的最大深度]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104079566</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104079566</guid><author>acticn</author><pubDate>Fri, 24 Jan 2020 10:30:00 +0800</pubDate><description><![CDATA[给定一个二叉树，找出其最大深度。
二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。
说明: 叶子节点是指没有子节点的节点。
示例：
给定二叉树 [3,9,20,null,null,15,7]，

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/ \
&nbsp;&n...]]></description><category></category></item><item><title><![CDATA[226. 翻转二叉树]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104074896</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104074896</guid><author>acticn</author><pubDate>Thu, 23 Jan 2020 11:59:14 +0800</pubDate><description><![CDATA[fdsfds 4


]]></description><category></category></item><item><title><![CDATA[461. 汉明距离]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104074745</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104074745</guid><author>acticn</author><pubDate>Thu, 23 Jan 2020 11:35:22 +0800</pubDate><description><![CDATA[两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。
给出两个整数 x 和 y，计算它们之间的汉明距离。
注意：
0 ≤ x, y &lt; 231.
示例:

输入: x = 1, y = 4
输出: 2
解释: 1   (0 0 0 1)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4   (0 1 0 0)
&n...]]></description><category></category></item><item><title><![CDATA[804. 唯一摩尔斯密码词]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104071941</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104071941</guid><author>acticn</author><pubDate>Wed, 22 Jan 2020 18:52:37 +0800</pubDate><description><![CDATA[国际摩尔斯密码定义一种标准编码方式，将每个字母对应于一个由一系列点和短线组成的字符串， 比如: "a" 对应 ".-", "b" 对应 "-...", "c" 对应 "-.-.", 等等。
为了方便，所有26个英文字母对应摩尔斯密码表如下：

[".-","-…","-.-.","-…",".","…-.","–.","…","…",".—","-.-",".-…","–","-.","—","....]]></description><category></category></item><item><title><![CDATA[832. 翻转图像]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104071719</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104071719</guid><author>acticn</author><pubDate>Wed, 22 Jan 2020 18:25:47 +0800</pubDate><description><![CDATA[给定一个二进制矩阵 A，我们想先水平翻转图像，然后反转图像并返回结果。
水平翻转图片就是将图片的每一行都进行翻转，即逆序。例如，水平翻转 [1, 1, 0] 的结果是 [0, 1, 1]。
反转图片的意思是图片中的 0 全部被 1 替换， 1 全部被 0 替换。例如，反转 [0, 1, 1] 的结果是 [1, 0, 0]。
示例 1:

输入: [[1,1,0],[1,0,1],[0,0,0]]
...]]></description><category></category></item><item><title><![CDATA[词根词缀(1)]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104046355</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104046355</guid><author>acticn</author><pubDate>Sun, 19 Jan 2020 23:33:40 +0800</pubDate><description><![CDATA[前缀
词根
后缀
含义
例子




ab/abs


相反，否定
ab


pro


向前
protect


de


去掉
delight



tect

盖子
protect, detective



tract

拉
tractor, abstraction



err

错误
error, aberrant



cond

藏
recondite, abscond

...]]></description><category></category></item><item><title><![CDATA[946. 验证栈序列]]></title><link>https://blog.youkuaiyun.com/acticn/article/details/104045553</link><guid>https://blog.youkuaiyun.com/acticn/article/details/104045553</guid><author>acticn</author><pubDate>Sun, 19 Jan 2020 21:59:21 +0800</pubDate><description><![CDATA[给定 pushed 和 popped 两个序列，每个序列中的 值都不重复，只有当它们可能是在最初空栈上进行的推入 push 和弹出 pop 操作序列的结果时，返回 true；否则，返回 false 。
示例 1：

输入：pushed = [1,2,3,4,5], popped = [4,5,3,2,1]
输出：true
解释：我们可以按以下顺序执行：
push(1), push(2), push...]]></description><category></category></item></channel></rss>