<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Umbraner的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Umbraner</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Umbraner]]></copyright><item><title><![CDATA[Leetcode刷题（8. 字符串转换整数 (atoi)）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107723625</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107723625</guid><author>Umbraner</author><pubDate>Fri, 31 Jul 2020 23:32:14 +0800</pubDate><description><![CDATA[@[TOC](Leetcode刷题（8. 字符串转换整数 (atoi)）)
一.题目
请你来实现一个 atoi 函数，使其能将字符串转换成整数。
首先，该函数会根据需要丢弃无用的开头空格字符，直到寻找到第一个非空格的字符为止。接下来的转化规则如下：
如果第一个非空字符为正或者负号时，则将该符号与之后面尽可能多的连续数字字符组合起来，形成一个有符号整数。
假如第一个非空字符是数字，则直接将其与之后连续的数字字符组合起来，形成一个整数。
该字符串在有效的整数部分之后也可能会存在多余的字符，那么这些字符可以被忽略]]></description><category></category></item><item><title><![CDATA[Leetcode刷题（29. 两数相除）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107723040</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107723040</guid><author>Umbraner</author><pubDate>Fri, 31 Jul 2020 22:47:44 +0800</pubDate><description><![CDATA[Leetcode刷题（29. 两数相除）一.题目二.代码（C）三.提交记录四.备注
一.题目
给定两个整数，被除数 dividend 和除数 divisor。将两数相除，要求不使用乘法、除法和 mod 运算符。
返回被除数 dividend 除以除数 divisor 得到的商。
整数除法的结果应当截去（truncate）其小数部分，例如：truncate(8.345) = 8 以及 truncate(-2.7335) = -2
示例 1::

输入: dividend = 10, divisor = 3
输]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（序列化二叉树）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107333860</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107333860</guid><author>Umbraner</author><pubDate>Tue, 14 Jul 2020 11:07:35 +0800</pubDate><description><![CDATA[剑指Offer刷题（序列化二叉树）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
请实现两个函数，分别用来序列化和反序列化二叉树
二叉树的序列化是指：把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串，从而使得内存中建立起来的二叉树可以持久保存。序列化可以基于先序、中序、后序、层序的二叉树遍历方式来进行修改，序列化的结果是一个字符串，序列化时通过 某种符号表示空节点（#），以 ！ 表示一个结点值的结束（value!）。
二叉树的反序列化是指：根据某种遍历顺序得到的序列化字符串结果st]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（替换空格）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107332731</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107332731</guid><author>Umbraner</author><pubDate>Tue, 14 Jul 2020 10:31:11 +0800</pubDate><description><![CDATA[剑指Offer刷题（替换空格）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
请实现一个函数，将一个字符串中的每个空格替换成“%20”。例如，当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
二.代码（C++）
class Solution {
public:
	void replaceSpace(char *str,int length) {
        if(!str || length&lt;0) return;
        in]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（从尾到头打印链表）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107331785</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107331785</guid><author>Umbraner</author><pubDate>Tue, 14 Jul 2020 09:59:41 +0800</pubDate><description><![CDATA[剑指Offer刷题（从尾到头打印链表）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
输入一个链表，按链表从尾到头的顺序返回一个ArrayList。
二.代码（C++）
/**
*  struct ListNode {
*        int val;
*        struct ListNode *next;
*        ListNode(int x) :
*              val(x), next(NULL) {
*        }
*  };
*/
clas]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（重建二叉树）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107326244</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107326244</guid><author>Umbraner</author><pubDate>Mon, 13 Jul 2020 22:01:26 +0800</pubDate><description><![CDATA[剑指Offer刷题（重建二叉树）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
输入某二叉树的前序遍历和中序遍历的结果，请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6}，则重建二叉树并返回。
二.代码（C++）
/**
 * Definition for binary tree
 * struct TreeNode {
 *     int val;
 *     ]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（旋转数组的最小数字）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107320522</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107320522</guid><author>Umbraner</author><pubDate>Mon, 13 Jul 2020 16:55:47 +0800</pubDate><description><![CDATA[剑指Offer刷题（旋转数组的最小数字）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
把一个数组最开始的若干个元素搬到数组的末尾，我们称之为数组的旋转。
输入一个非递减排序的数组的一个旋转，输出旋转数组的最小元素。
例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转，该数组的最小值为1。
NOTE：给出的所有元素都大于0，若数组大小为0，请返回0。
二.代码（C++）
class Solution {
public:
    int minNumberInRotateArr]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（斐波那契数列）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107319810</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107319810</guid><author>Umbraner</author><pubDate>Mon, 13 Jul 2020 16:31:32 +0800</pubDate><description><![CDATA[剑指Offer刷题（斐波那契数列）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
大家都知道斐波那契数列，现在要求输入一个整数n，请你输出斐波那契数列的第n项（从0开始，第0项为0，第1项是1）。
n&lt;=39
二.代码（C++）
class Solution {
public:
    int Fibonacci(int n) {
        int a=0,b=1;
        int res;
        if(n&lt;2)
            return n]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（跳台阶）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107319604</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107319604</guid><author>Umbraner</author><pubDate>Mon, 13 Jul 2020 16:28:19 +0800</pubDate><description><![CDATA[剑指Offer刷题（跳台阶）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
一只青蛙一次可以跳上1级台阶，也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法（先后次序不同算不同的结果）。
二.代码（C++）
class Solution {
public:
    int jumpFloor(int number) {
        vector&lt;int&gt; res(number+1);
        if(number&lt;=1)
            retu]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（矩形覆盖）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107319303</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107319303</guid><author>Umbraner</author><pubDate>Mon, 13 Jul 2020 16:16:20 +0800</pubDate><description><![CDATA[剑指Offer刷题（矩形覆盖）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2*n的大矩形，总共有多少种方法？
比如n=3时，2*3的矩形块有3种覆盖方法：

二.代码（C++）
class Solution {
public:
    int rectCover(int number) {
        vector&lt;int&gt; v(number+1);
        if(numb]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（二进制中1的个数）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107318116</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107318116</guid><author>Umbraner</author><pubDate>Mon, 13 Jul 2020 15:36:26 +0800</pubDate><description><![CDATA[剑指Offer刷题（二进制中1的个数）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
输入一个整数，输出该数32位二进制表示中1的个数。其中负数用补码表示。
二.代码（C++）
class Solution {
public:
     int  NumberOf1(int n) {
         int count = 0;
         while(n)
         {
             count++;
             n = n &amp; (n-1]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（连续子数组的最大和）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107317841</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107317841</guid><author>Umbraner</author><pubDate>Mon, 13 Jul 2020 15:24:29 +0800</pubDate><description><![CDATA[剑指Offer刷题（数值的整数次方）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
保证base和exponent不同时为0
二.代码（C++）
class Solution {
public:
    double Power(double base, int exponent) {
        if(exponent&lt;0)
        {
           ]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（链表中倒数第k个结点）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107256772</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107256772</guid><author>Umbraner</author><pubDate>Fri, 10 Jul 2020 17:27:30 +0800</pubDate><description><![CDATA[剑指Offer刷题（链表中倒数第k个结点）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
输入一个链表，输出该链表中倒数第k个结点。
二.代码（C++）
/*
struct ListNode {
	int val;
	struct ListNode *next;
	ListNode(int x) :
			val(x), next(NULL) {
	}
};*/
class Solution {
public:
    ListNode* FindKthToTail(ListNode* p]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（反转链表）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107252706</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107252706</guid><author>Umbraner</author><pubDate>Fri, 10 Jul 2020 15:55:01 +0800</pubDate><description><![CDATA[剑指Offer刷题（反转链表）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
输入一个链表，反转链表后，输出新链表的表头。
二.代码（C++）
/*
struct ListNode {
	int val;
	struct ListNode *next;
	ListNode(int x) :
			val(x), next(NULL) {
	}
};*/
class Solution {
private:
    ListNode* end;
    void reverse(ListNod]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（合并两个排序的链表）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107251844</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107251844</guid><author>Umbraner</author><pubDate>Fri, 10 Jul 2020 15:25:17 +0800</pubDate><description><![CDATA[剑指Offer刷题（合并两个排序的链表）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
输入两个单调递增的链表，输出两个链表合成后的链表，当然我们需要合成后的链表满足单调不减规则。
二.代码（C++）
/*
struct ListNode {
	int val;
	struct ListNode *next;
	ListNode(int x) :
			val(x), next(NULL) {
	}
};*/
class Solution {
public:
    ListNode* M]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（树的子结构）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107251100</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107251100</guid><author>Umbraner</author><pubDate>Fri, 10 Jul 2020 15:07:33 +0800</pubDate><description><![CDATA[剑指Offer刷题（树的子结构）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
输入两棵二叉树A，B，判断B是不是A的子结构。（ps：我们约定空树不是任意一个树的子结构）
二.代码（C++）
/*
struct TreeNode {
	int val;
	struct TreeNode *left;
	struct TreeNode *right;
	TreeNode(int x) :
			val(x), left(NULL), right(NULL) {
	}
};*/
class S]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（包含min函数的栈）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107246509</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107246509</guid><author>Umbraner</author><pubDate>Fri, 10 Jul 2020 11:10:56 +0800</pubDate><description><![CDATA[剑指Offer刷题（包含min函数的栈）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
定义栈的数据结构，请在该类型中实现一个能够得到栈中所含最小元素的min函数（时间复杂度应为O（1））。
注意：保证测试中不会当栈为空的时候，对栈调用pop()或者min()或者top()方法。
二.代码（C++）
class Solution {
private:
    stack&lt;int&gt; mins;
    stack&lt;int&gt; st;
public:
    void p]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（栈的压入、弹出序列）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107246050</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107246050</guid><author>Umbraner</author><pubDate>Fri, 10 Jul 2020 10:56:46 +0800</pubDate><description><![CDATA[剑指Offer刷题（栈的压入、弹出序列）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
输入两个整数序列，第一个序列表示栈的压入顺序，请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序，序列4,5,3,2,1是该压栈序列对应的一个弹出序列，但4,3,5,1,2就不可能是该压栈序列的弹出序列。（注意：这两个序列的长度是相等的）
二.代码（C++）
class Solution {
public:
    bool IsPopOr]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（从上往下打印二叉树）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107244767</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107244767</guid><author>Umbraner</author><pubDate>Fri, 10 Jul 2020 10:25:18 +0800</pubDate><description><![CDATA[剑指Offer刷题（从上往下打印二叉树）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
从上往下打印出二叉树的每个节点，同层节点从左至右打印。
二.代码（C++）
/*
struct TreeNode {
	int val;
	struct TreeNode *left;
	struct TreeNode *right;
	TreeNode(int x) :
			val(x), left(NULL), right(NULL) {
	}
};*/
class Solution {
publ]]></description><category></category></item><item><title><![CDATA[剑指Offer刷题（二叉搜索树的后序遍历序列）]]></title><link>https://blog.youkuaiyun.com/Umbraner/article/details/107244293</link><guid>https://blog.youkuaiyun.com/Umbraner/article/details/107244293</guid><author>Umbraner</author><pubDate>Fri, 10 Jul 2020 10:13:26 +0800</pubDate><description><![CDATA[剑指Offer刷题（二叉搜索树的后序遍历序列）一.题目描述二.代码（C++）三.提交记录四.备注
一.题目描述
输入一个整数数组，判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。
二.代码（C++）
class Solution {
private:
    bool Verify(vector&lt;int&gt; seq,int begin, int root)
    {
        if(begin&gt;=root)
  ]]></description><category></category></item></channel></rss>