<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Aelous_dp的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Aelous_dp</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Aelous_dp]]></copyright><item><title><![CDATA[七月历程]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/108905450</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/108905450</guid><author>Aelous_dp</author><pubDate>Fri, 02 Oct 2020 22:00:10 +0800</pubDate><description><![CDATA[六月底老师通知让我提前返校，去长春自我隔离一段时间，这几天一直在收拾东西。空余时间没用来学习，不过倒是上 steam 上买了个游戏(QAQ)
2020 是个多灾多难的年份(澳洲火灾，东非蝗虫肆虐，加拿大雪灾，菲律宾火山爆发，克什米尔雪崩，全球疫情)，我只愿世界和平，不由得想到《流浪地球》的台词：

“最初，没有人在意这场灾难，这不过是一场山火，一次旱灾，一个物种的灭绝，一座城市的消失。直到这场灾难和每个人息息相关。”

几天没写东西，心里有点痒痒，可是赶飞机，找住处，写点啥呢？思来想去，有了这篇历程。

以]]></description><category></category></item><item><title><![CDATA[数码管原理]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107855777</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107855777</guid><author>Aelous_dp</author><pubDate>Fri, 07 Aug 2020 09:56:13 +0800</pubDate><description><![CDATA[今天有师弟问我数码管的问题，我想起我刚学单片机的时候，好像也在数码管的地方迷糊了一段时间，就简单写写数码管的原理。
首先，什么是数码管？
百度百科解答：数码管，也称作辉光管，是一种可以显示数字和其他信息的电子设备。玻璃管中包括一个金属丝网制成的阳极和多个阴极。大部分数码管阴极的形状为数字。管中…
看了估计白看，简言之，数码管是一种半导体发光器件，基本单元就是发光二极管，如果不明白发光二极管的话，请学习模电基础。

多个发光二极管，摆放成数字的位置，成为一个基本的数码管单元。
工作原理
一些基本概念如下：

]]></description><category></category></item><item><title><![CDATA[LeetCode 841.钥匙和房间 - C++ - 小结]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107855750</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107855750</guid><author>Aelous_dp</author><pubDate>Fri, 07 Aug 2020 09:54:02 +0800</pubDate><description><![CDATA[钥匙和房间
有 N 个房间，开始时你位于 0 号房间。每个房间有不同的号码：0，1，2，…，N-1，并且房间里可能有一些钥匙能使你进入下一个房间。
在形式上，对于每个房间 i 都有一个钥匙列表 rooms[i]，每个钥匙 rooms[i][j]由[0,1，…，N-1]中的一个整数表示，其中 N=rooms.length。钥匙 rooms[i][j]=v 可以打开编号为 v 的房间。
最初，除 0 号房间外的其余所有房间都被锁住。
你可以自由地在房间之间来回走动。
如果能进入每个房间返回 true，否则返回 ]]></description><category></category></item><item><title><![CDATA[LeetCode 542.01 矩阵 - C++ - 小结]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107855715</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107855715</guid><author>Aelous_dp</author><pubDate>Fri, 07 Aug 2020 09:53:11 +0800</pubDate><description><![CDATA[01 矩阵
给定一个由 0 和 1 组成的矩阵，找出每个元素到最近的 0 的距离
两个相邻元素间的距离为 1
示例：
输入:
0 0 0
0 1 0
0 0 0
输出:
0 0 0
0 1 0
0 0 0
输入:
0 0 0
0 1 0
1 1 1
输出:
0 0 0
0 1 0
1 2 1

注意:

给定矩阵的元素个数不超过 10000
给定矩阵中至少有一个元素是 0
矩阵中的元素只在四个方向上相邻:上、下、左、右。

个人理解：
应该挺好理解的，要得到的是最近距离，所有元素，那就广度优先搜索呗。
弄一]]></description><category></category></item><item><title><![CDATA[LeetCode 733.图像渲染 - C++ - 小结]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107855684</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107855684</guid><author>Aelous_dp</author><pubDate>Fri, 07 Aug 2020 09:51:42 +0800</pubDate><description><![CDATA[图像渲染
有一幅以二维整数数组表示的图画，每一个整数表示该图画的像素值大小，数值在 0 到 65535 之间。
给你一个坐标(sr,sc)表示图像渲染开始的像素值（行，列）和一个新的颜色值 newColor，让你重新上色这幅图像。
为了完成上色工作，从初始坐标开始，记录初始坐标的上下左右四个方向上像素值与初始坐标相同的相连像素点，接着再记录这四个方向上符合条件的像素点与他们对应四个方向上像素值与初始坐标相同的相连像素点……，重复该过程。将所有有记录的像素点的颜色值改为新的颜色值。
最后返回经过上色渲染后的图]]></description><category></category></item><item><title><![CDATA[LeetCode 394.字符串解码 - C++ - 小结]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107855649</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107855649</guid><author>Aelous_dp</author><pubDate>Fri, 07 Aug 2020 09:50:43 +0800</pubDate><description><![CDATA[字符串解码
给定一个经过编码的字符串，返回它解码后的字符串。
编码规则为:k[encoded_string]，表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。
你可以认为输入字符串总是有效的；输入字符串中没有额外的空格，且输入的方括号总是符合格式要求的。
此外，你可以认为原始数据不包含数字，所有的数字只表示重复的次数 k，例如不会出现像 3a 或 2[4]的输入。
示例：
输入：s = "3[a]2[bc]"
输出："aaabcbc"
输入：s = "3[a2[]]></description><category></category></item><item><title><![CDATA[LeetCode 225.用队列实现栈 - C++ - 小结]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107855606</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107855606</guid><author>Aelous_dp</author><pubDate>Fri, 07 Aug 2020 09:49:27 +0800</pubDate><description><![CDATA[用队列实现栈
使用队列实现栈的下列操作：

push(x): 元素 x 入栈
pop(): 移除栈顶元素
top(): 获取栈顶元素
empty(): 返回栈是否为空

注意:

你只能使用队列的基本操作：也就是 push to back,peek/pop from front,size,和 is empty 这些操作是合法的
你所使用的语言也许不支持队列。你可以使用 list 或者 deque（双端队列）来模拟一个队列,只要是标准的队列操作即可
你可以假设所有操作都是有效的（例如,对一个空的栈不会调用 p]]></description><category></category></item><item><title><![CDATA[《姑娘》]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107643474</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107643474</guid><author>Aelous_dp</author><pubDate>Fri, 31 Jul 2020 09:16:35 +0800</pubDate><description><![CDATA[《姑娘》
我想，我爱上一个姑娘，
我想，她
因我温柔而温柔，
因我善良而善良；
她会生气也会倔强，
她会为我心动为我荡漾；

我想她看我，眼里有光，
我眼中也倒映着她的衣裙和她俊俏的模样；
她那么的天真，那么纯洁，
我想她对我热情，对我疯狂；
她从天而降，像雷鸣掠过飞鸟的翅膀，
扑进我怀中，如流水轰击山谷的心脏；
我忍不住呐喊，却止步彷徨。
她，
点燃了我，点燃了我熄灭已久的心跳；
她，
推开了我，带给我那凋零一般的绝望；
姑娘你离开，飘飘带走了落叶，
姑娘你回来，轻轻踏着那白雪，
姑娘仰着头，看我炽热的眼]]></description><category></category></item><item><title><![CDATA[LeetCode 232.用栈实现队列 - C++ - 小结]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107700482</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107700482</guid><author>Aelous_dp</author><pubDate>Fri, 31 Jul 2020 09:14:38 +0800</pubDate><description><![CDATA[使用栈实现队列的下列操作：

push(x): 将一个元素放入队列的尾部
pop(): 从队列首部移除元素
peek(): 返回队列首部的元素
empty(): 返回队列是否为空

示例：
MyQueue queue = new MyQueue();

queue.push(1);
queue.push(2);
queue.peek();  // 返回 1
queue.pop();   // 返回 1
queue.empty(); // 返回 false

说明:

你只能使用标准的栈操作：也就是只有 pu]]></description><category></category></item><item><title><![CDATA[LeetCode 94.二叉树的中序遍历 - C++ - 深度优先搜索(DFS)]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107700423</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107700423</guid><author>Aelous_dp</author><pubDate>Thu, 30 Jul 2020 20:45:31 +0800</pubDate><description><![CDATA[给定一个二叉树，返回它的中序遍历。
首先得知道什么是中序遍历：
二叉树的遍历方式有前序，中序，后序，层序
前序遍历：先访问根节点，然后左子树，然后右子树
中序遍历：先访问左子树，然后根节点，然后右子树
后序遍历：先访问左子树，然后右子树，然后根节点
层序遍历：把一棵树从上到下，从左到右依次写出来
接下来就好理解了，左根右，递归。
代码如下(C++)：
class Solution {
public:
    vector&lt;int&gt; ans;        // 输出
    vector&lt;]]></description><category></category></item><item><title><![CDATA[LeetCode 494.目标和 - C++ - 深度优先搜索(DFS)]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107700393</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107700393</guid><author>Aelous_dp</author><pubDate>Thu, 30 Jul 2020 20:43:51 +0800</pubDate><description><![CDATA[给定一个非负整数数组，a1,a2,…,an,和一个目标数 S。现在你有两个符号+和-。对于数组中的任意一个整数，你都可以从+或-中选择一个符号添加在前面。
返回可以使最终数组和为目标数 S 的所有添加符号的方法数。
示例：
输入：nums: [1, 1, 1, 1, 1], S: 3
输出：5
解释：
-1+1+1+1+1 = 3
+1-1+1+1+1 = 3
+1+1-1+1+1 = 3
+1+1+1-1+1 = 3
+1+1+1+1-1 = 3
一共有5种方法让最终目标和为3。

提示：

数组非空，且]]></description><category></category></item><item><title><![CDATA[LeetCode 133.克隆图 - C++ - 深度优先搜索(DFS)]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107700154</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107700154</guid><author>Aelous_dp</author><pubDate>Thu, 30 Jul 2020 20:33:03 +0800</pubDate><description><![CDATA[给你无向连通图中一个节点的引用，请你返回该图的深拷贝（克隆）
图中的每个节点都包含它的值 val（int）和其邻居的列表（list[Node]）
class Node {
  public int val;
  public List&lt;Node&gt; neighbors;
}

说白了，看了半天没懂，大概意思就是说？？？拷贝一个图？参考了别人的代码，自己还是没理解。等再看看。
感觉拿着 dfs 框架套上去就行了。
代码如下(C++):
class Solution {
public:
  Node*]]></description><category></category></item><item><title><![CDATA[LeetCode 200.岛屿数量 - C++ - 深度优先搜索(DFS)]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107700095</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107700095</guid><author>Aelous_dp</author><pubDate>Thu, 30 Jul 2020 20:30:58 +0800</pubDate><description><![CDATA[岛屿数量又来了，大多数情况下，能用 BFS 解决的问题，也能被 DFS 解决。问题具体见。岛屿问题
代码如下(C++):
class Solution {
    private:
    void dfs(vector&lt;vector&lt;char&gt;&gt; &amp; grid,int r,int c){    // 深度优先算法，感觉就是个递归
        int nr = grid.size();     // 岛屿大小
        int nc = grid[0].size()]]></description><category></category></item><item><title><![CDATA[LeetCode - 栈和深度优先搜索]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107700018</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107700018</guid><author>Aelous_dp</author><pubDate>Thu, 30 Jul 2020 20:29:23 +0800</pubDate><description><![CDATA[与 BFS 类似，深度优先搜索（DFS）也可用于查找从根结点道目标结点的路径。
1.结点的处理顺序是什么？
在下图中，从根结点 A 开始。首先选择结点 B 的路径，并进行回溯，直到到达结点 E，无法更进一步。然后回溯到 A 并选择第二条路径到结点 C。从 C 开始，我们尝试第一条路径到 E 但是 E 已被访问过。所以我们回到 C 并尝试从另一条路径到 F。最后找到 G。


总的来说，在我们到达最深的结点之后，我们只会回溯并尝试另一条路径。

因此我们在 DFS 中找到的第一条路径不一定就是最短的路径。例如]]></description><category></category></item><item><title><![CDATA[LeetCode 150.逆波兰表达式求值 - C++ - 注释]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107699962</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107699962</guid><author>Aelous_dp</author><pubDate>Thu, 30 Jul 2020 20:27:10 +0800</pubDate><description><![CDATA[根据逆波兰表示法，求表达式的值。
有效的运算符包括+,-,*,/。每个运算对象可以是整数，也可以是另一个逆波兰表达式。
说明：

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

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

代码如下(C++)：
class Solution {
public:
    int ans;        // 结果]]></description><category></category></item><item><title><![CDATA[LeetCode 739.每日温度 - C++ - 注释]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107699833</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107699833</guid><author>Aelous_dp</author><pubDate>Thu, 30 Jul 2020 20:24:08 +0800</pubDate><description><![CDATA[请根据每日气温列表，重新生成一个列表。对应位置的输出为：要想观测到更高的气温，至少需要等待的天数。如果气温在这之后都不会升高，请在该位置用  0  来代替。
例如，给定一个列表 temperatures=[73,74,75,71,69,72,76,73]，你的输出应该是[1,1,4,2,1,1,0,0]。
提示：气温列表长度的范围是[1,30000]。每个气温的值的均为华氏度，都是在[30,100]范围内的整数。
代码如下(C++)：
class Solution {
public:
    vector&]]></description><category></category></item><item><title><![CDATA[LeetCode 20.有效的括号 - C++ -注释]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107699745</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107699745</guid><author>Aelous_dp</author><pubDate>Thu, 30 Jul 2020 20:21:46 +0800</pubDate><description><![CDATA[这个题是我觉得比较简单的了。开心。
给定一个只包括’(’,’)’,’{’,’}’,’[’,’]'的字符串，判断字符串是否有效。
有效字符串需满足：

左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。

注意空字符串可被认为是有效字符串。
代码实现如下(C++)：
class Solution {
public:
    bool isValid(string s) {
        stack&lt;char&gt; st;     // 定义栈
        for(auto x:s)]]></description><category></category></item><item><title><![CDATA[LeetCode 155.最小栈 - C++ - 辅助栈]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107699660</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107699660</guid><author>Aelous_dp</author><pubDate>Thu, 30 Jul 2020 20:19:57 +0800</pubDate><description><![CDATA[设计一个支持 push,pop,top 操作，并能在常数时间内检索到最小元素的栈。

push(x)：将元素 x 推入栈中。
pop()：删除栈顶的元素。
top()：获取栈顶元素。
getMin()：检索栈中的最小元素。

官方思路如下
方法一：使用辅助栈

定义一个[数据栈]来支持 push、pop、top 操作
定义一个[辅助栈]其栈顶为当前最小值，以支持常数时间复杂度的 getMin 操作

代码如下(C++)：
class MinStack {
    stack&lt;int&gt; dataS]]></description><category></category></item><item><title><![CDATA[你好2020]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107643905</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107643905</guid><author>Aelous_dp</author><pubDate>Tue, 28 Jul 2020 19:58:38 +0800</pubDate><description><![CDATA[00 年代如同梦呓，10 年代就在昨日。
趁大家都在纪念着 10 年代的结束，我是不是可以偷偷的原谅自己不太满意的过去。
希望过往所有的遗憾都是未来惊喜的铺垫。

生活从未偏爱过谁，可我能听懂你的歌，这也许就是你我生存下去的意义。
—— 佚名

2019 年 23 点 58 分，我抬手看了看时间，嗯，还有两分钟。
我盯着时间走到 59，开始在心中倒数，60.59.58…，不晓得是心情不够平静，还是身边歌声太过喧嚣，在倒数 5 秒的时候，时间竟然已经到了 00:00，就在眨眼的那前一秒还是大大的 59，59.]]></description><category></category></item><item><title><![CDATA[Altium Designer 入门教程]]></title><link>https://blog.youkuaiyun.com/Aelous_dp/article/details/107643723</link><guid>https://blog.youkuaiyun.com/Aelous_dp/article/details/107643723</guid><author>Aelous_dp</author><pubDate>Tue, 28 Jul 2020 19:58:01 +0800</pubDate><description><![CDATA[注：使用了引用语法但不是引用：
以下内容有部分来源于网络、博客等等，结尾会给出参考链接。(๑•ั็ω•็ั๑)
希望大家可以自觉的在转载、转发时著名出处。(๑• . •๑)
预防侵权，支持原创，支持开源，从你我做起。=￣ ω ￣=

放在开始
如果您喜欢我的文章，拜托点赞+收藏+关注，博主会根据大家喜好来推出相关系列文章～
更多精彩内容也可以访问我的博客Aelous-BLog
/**
 * Copyright(C),2019-2020,xudongpo.cn
 * Author: 许东坡
 * Email.]]></description><category></category></item></channel></rss>