<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[L_smartworld的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/L_smartworld</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; L_smartworld]]></copyright><item><title><![CDATA[clion的安装与配置]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/131025029</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/131025029</guid><author>L_smartworld</author><pubDate>Sat, 03 Jun 2023 19:58:51 +0800</pubDate><description><![CDATA[安装：安装CLion_clion安装和配置_离俗的博客-优快云博客配置：CLion-MinGW-配置_clion配置mingw_胡安民的博客-优快云博客]]></description><category></category></item><item><title><![CDATA[C++秋招知识点总结]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/115287158</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/115287158</guid><author>L_smartworld</author><pubDate>Mon, 29 Mar 2021 11:19:33 +0800</pubDate><description><![CDATA[先介绍下本人的情况，本人研究生双非院校本科也是普通二本，也无实习无项目非科班出生。刷了将近半年的题和自学了相关知识点，最终拿到海康、大华、同花顺、深信服、CVTE、紫光展锐、华为offer。


...]]></description><category></category></item><item><title><![CDATA[使用层次遍历重建二叉树并遍历]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/109022349</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/109022349</guid><author>L_smartworld</author><pubDate>Mon, 12 Oct 2020 10:13:17 +0800</pubDate><description><![CDATA[58同城的一道题，蛮有意思的。利用层次遍历后的数组，进行二叉树的重建。数值-1代表NULL。



解题思路：那么我们依然使用队列，进行层次遍历，进行重建，这边有的问题是当示例为array[] = { 1, 2, 3, 4, -1, 5, 6, 7, 8, -1, -1, 9, 10 , -1, -1 }时，那么需要注意去除NULL，因为NULL节点下面两个节点必然为NULL。



参考代码：


#include &lt;iostream&gt;
#include &lt;vector&gt;
#i..]]></description><category></category></item><item><title><![CDATA[剑指 Offer 57 - II. 和为s的连续正数序列]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/108725106</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/108725106</guid><author>L_smartworld</author><pubDate>Tue, 22 Sep 2020 10:19:23 +0800</pubDate><description><![CDATA[剑指 Offer 57 - II. 和为s的连续正数序列

难度:简单

输入一个正整数target，输出所有和为target的连续正整数序列（至少含有两个数）。

序列内的数字由小到大排列，不同序列按照首个数字从小到大排列。



示例 1：


输入：target = 9
输出：[[2,3,4],[4,5]]


示例 2：


输入：target = 15
输出：[[1,2,3,4,5],[4,5,6],[7,8]]



限制：

1 &lt;= target &lt;= 10^5


...]]></description><category></category></item><item><title><![CDATA[剑指 Offer 59 - II. 队列的最大值]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/108451867</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/108451867</guid><author>L_smartworld</author><pubDate>Mon, 07 Sep 2020 17:19:36 +0800</pubDate><description><![CDATA[剑指 Offer 59 - II. 队列的最大值

难度:中等

请定义一个队列并实现函数max_value得到队列里的最大值，要求函数max_value、push_back和pop_front的均摊时间复杂度都是O(1)。

若队列为空，pop_front和max_value需要返回 -1

示例 1：


输入: 
["MaxQueue","push_back","push_back","max_value","pop_front","max_value"]
[[],[1],[2],[]...]]></description><category></category></item><item><title><![CDATA[C++的继承与虚继承以及如何调用父类同名函数或成员变量]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/108291453</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/108291453</guid><author>L_smartworld</author><pubDate>Sat, 29 Aug 2020 10:49:47 +0800</pubDate><description><![CDATA[基础知识：

   理论看多了，发现不大会写代码，今天来做个总结，并把代码好好梳理一下。



1.类继承及调用父类同名函数或成员变量

  所谓类继承就是子类继承了父类的方法和属性（当然有三种继承权限）


#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;vector&gt;
#include &lt;algorithm&gt;

using namespace std;

class A{
public:
	voi...]]></description><category></category></item><item><title><![CDATA[手写智能指针（类）]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/108086365</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/108086365</guid><author>L_smartworld</author><pubDate>Tue, 18 Aug 2020 20:32:54 +0800</pubDate><description><![CDATA[基础知识：

智能指针的设计与实现:
1.智能指针类将一个计数器与类指向的对象相关联，引用计数跟踪该类有多少个对象共享同一指针。
2.每次创建类的新对象时，初始化指针并将引用计数置为1；
3/当对象作为另一对象的副本而创建时，拷贝构造函数拷贝指针并增加与之相应的引用计数；
4.对一个对象进行赋值时，赋值操作符减少左操作数所指对象的引用计数（如果引用计数为减至0，则删除对象），并增加右操作数所指对象的引用计数；
5.调用析构函数时，构造函数减少引用计数（如果引用计数减至0，则删除基础对象）。
6.所有的智能指]]></description><category></category></item><item><title><![CDATA[leetcode之技巧类总结（C++）]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/108072023</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/108072023</guid><author>L_smartworld</author><pubDate>Tue, 18 Aug 2020 10:53:04 +0800</pubDate><description><![CDATA[下面是力扣1-150中的技巧类题：





博客链接：
6.Z字形变换：https://blog.youkuaiyun.com/L_smartworld/article/details/106526031
7.整数反转：https://blog.youkuaiyun.com/L_smartworld/article/details/106528082
8.字符串转换整数 (atoi)：https://blog.youkuaiyun.com/L_smartworld/article/details/106541552
14.最长公共前缀：h.]]></description><category></category></item><item><title><![CDATA[leetcode之递归、贪心、图论、分治总结（C++）]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/108071401</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/108071401</guid><author>L_smartworld</author><pubDate>Tue, 18 Aug 2020 10:42:38 +0800</pubDate><description><![CDATA[基础知识：

     递归：这里的递归主要是DFS，就是以相同的操作，去操作每一个元素。

     贪心：贪心算法主要是将所求的结果最大化或者最小化。

     图论：https://blog.youkuaiyun.com/L_smartworld/article/details/107504915

     分治：分治就是将问题分成一块一块，然后进行解决。典型分治算法利用就是快排和归并排序。



以下是力扣1-150中的题目：







博客链接：

递归：
...]]></description><category></category></item><item><title><![CDATA[leetcode之双指针总结（C++）]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/108070915</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/108070915</guid><author>L_smartworld</author><pubDate>Tue, 18 Aug 2020 10:15:42 +0800</pubDate><description><![CDATA[基础知识：

     双指针一般是快慢指针向后移动，或者左右指针向中间移动。双指针：双指针法的判定条件都是while(left&lt;right)



下面是力扣1-150中双指针的题：





博客链接：

9.回文数：https://blog.youkuaiyun.com/L_smartworld/article/details/106544060
11.盛最多水的容器：https://blog.youkuaiyun.com/L_smartworld/article/details/106549754
15...]]></description><category></category></item><item><title><![CDATA[leetcode之数据结构（哈希表，栈，队列，堆）总结（C++）]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/108005877</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/108005877</guid><author>L_smartworld</author><pubDate>Fri, 14 Aug 2020 15:47:14 +0800</pubDate><description><![CDATA[基础知识：

栈：FILO，先进后出https://blog.youkuaiyun.com/L_smartworld/article/details/105862717
队列：FIFO，先进先出https://blog.youkuaiyun.com/L_smartworld/article/details/105841702
哈希表：主要用于统计和查询https://blog.youkuaiyun.com/L_smartworld/article/details/105296110
    1.自建数组作为哈希表...]]></description><category></category></item><item><title><![CDATA[leetcode之二分法查找总结（C++）]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/108002727</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/108002727</guid><author>L_smartworld</author><pubDate>Fri, 14 Aug 2020 13:41:24 +0800</pubDate><description><![CDATA[基础知识：

   二分法查找是用在有序数组中。注意事项：哇，这个真的很关键，栽了好几次。当你条件设为while (left &lt;= right)时，当你用mid = (right + left) / 2时，(right + left)可能会溢出。另一个当你条件设为while (left &lt; right)时，当left == right时，才返回mid，那么将找不到mid。所以在不考虑left + right溢出的情况下，还是while (left &lt;= right)和mid = (...]]></description><category></category></item><item><title><![CDATA[构造函数、析构函数、拷贝构造函数（浅拷贝和深拷贝）、移动构造函数、赋值函数的区别]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/107988389</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/107988389</guid><author>L_smartworld</author><pubDate>Thu, 13 Aug 2020 19:51:24 +0800</pubDate><description><![CDATA[基础知识：

   突然发现看了这么久的C++知识点，突然一写发现连拷贝构造函数和赋值函数都写不来了。重新看了书，梳理了语法规范和注意事项，现在整理一下。

构造函数：

   构造函数主要是进行成员变量的初始化，有成员列表初始化和构造函数体内的赋值初始化。写法如下：


//构造函数名和类名相同，可以有多个
class example{
public:
    example(int x, int* y):a(x),b(y){}//成员列表初始化
    //example(int x, i...]]></description><category></category></item><item><title><![CDATA[leetcode之动态规划(DP)总结（C++）]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/107905422</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/107905422</guid><author>L_smartworld</author><pubDate>Mon, 10 Aug 2020 09:57:21 +0800</pubDate><description><![CDATA[基础知识：

   dp问题归根结底是寻找规律，总结出在各种不同情况下的数学表达式。是一种自下向上的设计，先解决子问题，然后将所有子问题的解决方式联合起来，最终解决问题。一般的思维步骤如下：

   1.判断是否为DP问题。两个条件：1.最优子结构；2.重叠子问题。解释下两个条件的含义，最优子结构指的是在计算f（n）的时候，f（n-1）子结构已经达到的题目要求的最优状态。重叠子问题是指在解决f（n）的时候，需要用到f（n-1）的结果。

    2.写出状态转移方程。这个步骤是DP问...]]></description><category></category></item><item><title><![CDATA[leetcode之回溯法刷题总结（C++)]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/107885704</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/107885704</guid><author>L_smartworld</author><pubDate>Sat, 08 Aug 2020 21:07:36 +0800</pubDate><description><![CDATA[基础知识：



总结第一波：https://blog.youkuaiyun.com/L_smartworld/article/details/106429270

总结第二波：https://blog.youkuaiyun.com/L_smartworld/article/details/107124243



下面是力扣1-150题中的回溯题目：





博客索引：

17.电话号码的字母组合：https://blog.youkuaiyun.com/L_smartworld/article/details/106602102

...]]></description><category></category></item><item><title><![CDATA[leetcode之链表刷题总结（C++）]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/107860770</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/107860770</guid><author>L_smartworld</author><pubDate>Fri, 07 Aug 2020 14:09:44 +0800</pubDate><description><![CDATA[基础知识：

     链表的基础知识主要涉及以下几方面，双指针及多指针的使用，建立临时头结点，使用数据结构对链表进行存储，时候在进行操作。





博客链接：

2.两数相加：https://blog.youkuaiyun.com/L_smartworld/article/details/106495075

19.删除链表的倒数第N个节点：https://blog.youkuaiyun.com/L_smartworld/article/details/106603145

21.合并两个有序链表：https:/...]]></description><category></category></item><item><title><![CDATA[leetcode之二叉树刷题总结（C++）]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/107789272</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/107789272</guid><author>L_smartworld</author><pubDate>Tue, 04 Aug 2020 16:54:50 +0800</pubDate><description><![CDATA[基础知识：

   所有的题都是建立在二叉树的前序遍历，中序遍历，后序遍历（它们的递归版与非递归版），及层次遍历。搜索二叉树及平衡二叉树。搜索二叉树是指按照中序遍历，它是从小到大排序的(所以考搜索二叉树基本考中序遍历)。平衡二叉树是指根节点的左右子树总结点相差不能超过1。



参考代码：（上面的遍历方式标准版）


#include &lt;iostream&gt;
#include &lt;vector&gt;
#include &lt;string&gt;
#include &lt;stack...]]></description><category></category></item><item><title><![CDATA[LeetCode-----第150题-----逆波兰表达式求值]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/107763526</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/107763526</guid><author>L_smartworld</author><pubDate>Tue, 04 Aug 2020 09:22:52 +0800</pubDate><description><![CDATA[逆波兰表达式求值

难度：中等

根据逆波兰表示法，求表达式的值。

有效的运算符包括+,-,*,/。每个运算对象可以是整数，也可以是另一个逆波兰表达式。



说明：

整数除法只保留整数部分。
	给定逆波兰表达式总是有效的。换句话说，表达式总会得出有效数值且不存在除数为 0 的情况。


示例1：


输入: ["2", "1", "+", "3", "*"]
输出: 9
解释: 该算式转化为常见的中缀算术表达式为：((2 + 1) * 3) = 9


示例2：


输入: ["4...]]></description><category></category></item><item><title><![CDATA[LeetCode-----第148题-----排序链表]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/107762733</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/107762733</guid><author>L_smartworld</author><pubDate>Mon, 03 Aug 2020 14:51:30 +0800</pubDate><description><![CDATA[排序链表

难度：中等

在O(nlogn) 时间复杂度和常数级空间复杂度下，对链表进行排序。

示例 1:


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


示例 2:


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



题目分析：

    题目的要求和苛刻，时间复杂度为O(nlogn)，那么在我们熟悉的排序中只有快排和归并排序，再者要求空间复杂度为...]]></description><category></category></item><item><title><![CDATA[LeetCode-----第147题-----对链表进行插入排序]]></title><link>https://blog.youkuaiyun.com/L_smartworld/article/details/107762495</link><guid>https://blog.youkuaiyun.com/L_smartworld/article/details/107762495</guid><author>L_smartworld</author><pubDate>Mon, 03 Aug 2020 14:17:24 +0800</pubDate><description><![CDATA[对链表进行插入排序

难度：中等

对链表进行插入排序。


插入排序的动画演示如上。从第一个元素开始，该链表可以被认为已经部分排序（用黑色表示）。
每次迭代时，从输入数据中移除一个元素（用红色表示），并原地将其插入到已排好序的链表中。



插入排序算法：

插入排序是迭代的，每次只移动一个元素，直到所有元素可以形成一个有序的输出列表。
	每次迭代中，插入排序只从输入数据中移除一个待排序的元素，找到它在序列中适当的位置，并将其插入。
	重复直到所有输入数据插入完为止。


题目分析：

   ...]]></description><category></category></item></channel></rss>