- 博客(73)
- 收藏
- 关注
原创 day20(12.10)——leetcode面试经典150
这题就是利用栈的特性,如果是左边的括号就加入栈中,否则进行匹配,匹配不上就return false。还有要特别注意栈中的元素的时候可能当前栈为空,直接进行判断,为空就直接return false。还有最后匹配完要检查一下栈中是否有元素,如果还有元素,就返回false。
2025-12-10 10:57:53
132
原创 day25(12.5)——leetcode面试经典150
哇去,到底是哪个天才这么聪明,居然想到了只有当它是起始序列头的时候才开始while,牛,这样确保了一个元素最多遍历两次。这是我最开始的代码,时间复杂度为O(nlog(n)),于是我想优化,所以才发现了下面的解法。
2025-12-05 20:53:59
295
原创 day24(12.4)——leetcode面试经典150
不是这题跟1. 两数之和做法几乎一模一样,秒了,很快就写完了,到了这一章才发现map这么好用!这总感觉就是找规律的题!
2025-12-04 15:43:30
328
原创 day23(12.3)——leetcode面试经典150
我傻逼了,我以为要排序呢,搁那库库捣鼓List<List<String>>怎么排序,结果竟然不用我排。看了题解,发现这么简单!
2025-12-03 21:16:03
193
原创 day22(12.2)——leetcode面试经典150
在写题解2的时候我一开始是想着直接让c1和c2比较,但是我发现报错,于是就换成转成字符串进行比较,然后完成该题之后就问了ai为什么不行,原因竟然是因为List的==比较还是equals来比较,都比较的是内存地址,就相当于都是==来比较。所以,如果我非要比较c1和c2,就必须用Arrays.equals(c1,c2)来比较。
2025-12-02 19:46:37
218
原创 如何将前端代码打包到nginx上
我们需要明确一件事情:nginx占用的端口就是8080,那就意味着我们后端服务器tomcat不能再为8080,必须进行修改,否则会有冲突(或者修改nginx里面的端口也可以)。具体修改:在,因为后端 Tomcat 已改为,且应用上下文路径是/money_war。
2025-12-02 16:09:46
308
原创 day17(11.18)——leetcode面试经典150
今天的题是我在操作系统上想的,回来实验的,之前c的时候我应该写过这题,我以前没觉得这么复杂啊。
2025-11-18 20:56:24
237
原创 day16(11.17)——leetcode面试经典150
昨天拿道题很难,没写完先跳过,等我下次想写题的时候写,最近不知道怎么回事,每天都特别困,眼睛很痛。今天的题依旧暴力解决。
2025-11-17 20:11:14
337
原创 day15(11.15)——leetcode面试经典150
这是我一开始写的,我想的是通过组合排列的方式进行拼接好所有字符串,然后再一个一个判断在s中能否找到,这样内存直接爆了我服了哈哈哈哈哈。
2025-11-15 17:11:29
336
原创 day13(11.13)——leetcode面试经典150
这道图采用滑动窗口的形式,我一直陷入了误区,我一直想着是一直无限循环右边界,直到长度符合要求,但是左边界只用if判断,有时候就找不到最短长度,且有时又根本找不到然后我才发现,我只需要一直用for来更新有边界,左边界用while一直找到最右边的符合条件的就行,就没有这么多需要判断的的地方,一开始还总担心右边界超线。
2025-11-13 20:30:47
245
原创 day11(11.11)——leetcode面试经典150
这几天学完了python,马上就要考试了,然后一下子就忘记背单词和写题了,狠狠的补回来!!!
2025-11-11 20:46:31
182
原创 day10(11.7)——leetcode面试经典150
这道题好繁琐啊,我的思路是一个一个单词判断,每一个都加上两个单词之间的空格去看长度是否超过maxWidth,如果超过了,进行判断,只有一个单词或者到了最后一行,直接左对齐,后面填充空格,超过一个单词,进行计算每个单词之间的空格的个数,进行填充,一个一个累加,最后加入最终的结果列表。但是真的一个不小心就容易写错......
2025-11-07 17:06:23
162
原创 day08(11.5)——leetcode面试经典150
我用的依旧是笨办法,直接就是弄一个二维字符数组,然后往里面一个一个塞,再遍历找出来。唯一要注意的就是没有值的ascll码为0, 值为‘\0’真没招了,果然还是得仔细,一不小心就出错啊啊啊啊啊。我觉得还是得看个题解,这个方法有点太笨了。先处理竖着的,再处理中间斜着的。
2025-11-05 23:16:35
230
原创 day05(11.2)——leetcode面试经典150
这题我一开始想的是从左到右遍历除了头尾的所有列,在第i列的时候,先从左边找到最高的一列,再从右边找到最高的一列,再来判断是左边的最高列更小还是右边的最高列更小,最后如果更小的最高列如果大于当前i的高度,则sum要加上他们之间的差值。。。
2025-11-02 21:18:19
182
原创 day04(11.1)——leetcode面试经典150
哈哈哈哈,漏了一天,安阳这个城市还是很恐怖的,昨天出去玩忘记带口罩了,回来的是时候骑车回来,结果应该是吸多了雾霾,头巨晕,就写不动了,所以今天写两题。
2025-11-01 22:08:08
332
原创 解决Maven版本不兼容问题的终极方案
Maven项目常见问题解决方案:1) Runtime异常通常由Maven版本过高引起,建议将3.9.4降级至3.6.1;2) 无法创建类时需右键java目录标记为SourcesRoot,若灰色不可选则重启项目;3) 缺失target目录可执行Maven的clean和install生命周期;4) 配置本地仓库路径时需将反斜杠改为正斜杠或双反斜杠。
2025-07-19 14:00:38
561
原创 IntelliJ IDEA 2021.2.1如何创建Web项目——超详细(没有之一)
访问 http://localhost:8080+你修改的路径 验证。
2025-05-25 19:04:29
1112
原创 用命令行编译java文件时不生成字节码文件(.class)?
在你确保你的java文件没有问题和环境变量配置没有问题的时候,但是当你输入编译命令javac Test.java的时候发现并没有生成Test.class字节码文件,你可以进行测试来排查问题,在cmd中输入where javac,如果系统中有。其二,看你的环境变量是否配置正确,不要在用户变量配置!不要在用户变量配置!不在再用户变量配置,最好在系统变量里面配置,系统变量里面进行新增变量,变量名JAVA_HOME,变量值为jdk的地址(不带bin)举例,当我输入where javac的时候,显示。
2025-04-23 10:27:52
348
原创 P1090 [NOIP2004 提高组] 合并果子 / [USACO06NOV] Fence Repair G
这题采用贪心思想,找到最小的两种果子进行合并,不断重复,直至只剩下一种果子。但这种方法效率比较低,两层for循环,所以比较慢。
2024-11-26 15:52:40
446
原创 最小生成树——Prim和Kruskal算法
这个算法和Prim用法是一致的,但是得到的方式却大不相同,Prim是找任意一个结点连着的最小的边,从而不断更新到达各个结点的最小花费。时间复杂度是:O(n*n),更适合稠密图;而Kruskal算法是找到最小的边,看这条边的两点结点是否在相同的集合,如果是,说明形成回路,如果不是,及时更新两结点所在的集合,直至所有集合都是1。时间复杂度:O(eloge),更适合稀疏图。
2024-11-25 21:13:09
505
原创 牛客周赛 Round 69 C-E
一、题目描述:一看这个题目是不是觉得是物理问题,我也觉得是这样的,全反射我都快忘记了,结果发现他居然还能这样看,请看图片:第一种情况:当目标点在小歪所在平面的上面得到的反射方向(3,3,8),这个8=(h-z)*2+z得到的第二种情况:当目标点在小歪所在平面的下面得到的反射方向(3,3,12),这个12=(h-z)*2+z得到的。注意他说了得约分,得到约分后的结果———>于是你还要对他们求最大公约数。
2024-11-25 17:16:00
1349
原创 Djskstra算法
将所有dist[i] (源点到各个点之间的距离的描述)都设置成map[u][i],如果源点到i点有权值,说明是通路,就把u设置成i的前驱,否则,将前驱设置成-1。在(2)中已经找到了离的最近的点,那么我判断非S集合的点是否能够通过最近的点来走捷径,如果可以就依次进行更新dist数组,同时更新前驱p数组。其实dijkstra算法采用的贪心策略是选择特殊路径长度最短的路径。(4)判断是否要结束。即找的最近点没有改变,是初始化指向的源点。(6)最后进行输出打印,用栈先进后出的性质来输出路径。
2024-11-21 21:52:46
307
原创 D. Kousuke‘s Assignment
下面我讲一下最妙的地方:就是他用了map作为哈希表,当我得到一个新的前缀和的时候,我现在map中判断,有没有出现过,如果出现过,并且它的索引>=我的上一个最美子区间的位置,这就说明我找到了一个新的子区间,cnt++,一旦等于的话,其实是我的特殊情况,就是我在最开始就把0给塞进去,map[0]=-1,我的index也是初始化为-1,这个时候当我第一个数为0,是出现了相等的情况,你们可以好好捋一下,我一开始也是有点不理解,后面就是一整个恍然大悟.
2024-11-20 20:05:45
228
原创 牛客周赛 Round 68
我看的题解的思路就是,先统计没有改变任何数之前,数组中有多少个元素能够和别的元素配对组成495的倍数,配对的方法:用两个指针,第一个指针i指向1-495,第二个指针j指向i-495,如果i和j存在,且乘积是495的倍数,分两种情况,当i和j相等时,个数其实是。然后再进行一个for循环,一个一个进行判断,元素+1之后会有几个数组中的元素的个数符合条件,如果比最开始的大,更新,恢复现场,再进行判断下一个........有点想复杂了,但实际上我看的其他大佬写的,真的很巧妙qwq,请看vcr。
2024-11-18 17:25:48
332
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅