- 博客(21)
- 收藏
- 关注
原创 算法训练营第19天|1047. 删除字符串中的所有相邻重复项
相邻重复删除 = 栈的经典应用;用字符串直接模拟栈,代码简洁好写;遍历一次即可完成所有删除。
2026-05-01 21:30:02
476
原创 算法训练营第18天|20. 有效的括号
栈是解决括号匹配的神器,后进先出完美对应规则;遇到右括号必须和最近的左括号匹配;最后栈必须为空才算完全有效。
2026-04-30 22:15:09
376
原创 算法训练营第17天|151.翻转字符串里的单词
作为新手,学会了借助字符串流处理空格问题。先提取单词再倒序拼接,逻辑简单好理解,也掌握了字符串处理的基础技巧。
2026-04-29 08:00:00
296
原创 算法训练营第16天|541. 反转字符串II
第一次写这类字符串题目,学会了按固定步长分组处理。利用库函数反转指定区间,巧妙用min处理边界,代码简洁高效,也明白了审题抓规则的重要性。
2026-04-28 22:13:20
378
原创 算法训练营第15天|344.反转字符串
这次题目要求原地反转字符数组,不能额外开辟空间。我学会了双指针写法,左右两端向内收缩交换元素,思路简单高效。同时也理解了O(1)空间的题意限制,做题要多留意约束条件,活用基础算法。
2026-04-27 22:34:13
220
原创 算法训练营第14天|18. 四数之和
第一次写四数之和题目,感觉收获很大。沿用排序加双指针的思路,在三数之和基础上多加一层循环就能实现。做题时发现整数溢出和元素去重很关键,稍有疏忽就会出错。慢慢理清边界条件与去重逻辑后,整体思路就顺畅多了,也学会了严谨处理数值范围问题。
2026-04-26 22:12:21
218
原创 算法训练营第13天| 454.四数相加II
这次写完四数相加的题目,我收获挺大。一开始只会想四层暴力循环,完全没考虑超时问题。学会了把四个数组拆分,用哈希表存两数之和,再找相反数匹配。分治加哈希的思路很巧妙,能大幅降低时间复杂度。也明白了遇到多数求和问题,拆分分组是很好的优化方法,后续还要多熟练哈希表的使用。
2026-04-25 22:40:25
262
原创 算法训练营第12天|169. 多数元素
写完这道多数元素题目,我收获挺大。第一次接触摩尔投票法,才发现利用题目“多数元素过半”的特性,就能只用一次遍历、不占额外空间解题。简单的计数加减逻辑很巧妙,也让我明白做题不能只会暴力解法,多观察题目条件,就能写出更高效的代码。
2026-04-24 22:04:51
437
原创 算法训练营第11天|80. 删除有序数组中的重复项 II
利用数组有序的特点,重复元素都挨在一起,只用两个指针就能原地修改数组,不需要额外开辟空间。只要判断当前元素是否已经保留两次,不满足就覆盖存入,思路清晰后代码很好理解,也明白了双指针在数组题目里的便捷之处。第一次做这道有序数组去重题,我学会了。
2026-04-23 21:34:23
327
原创 算法训练营第10天|26. 删除有序数组中的重复项
利用数组有序的特点,慢指针存放不重复元素,快指针遍历寻找新元素,遇到不同值就更新慢指针位置。理解了原地修改数组、不用额外开辟空间的思路,逻辑清晰,代码也很好理解。第一次做数组原地去重题目,学会了。
2026-04-22 21:00:32
384
原创 算法训练营第9天|两数之和
存储数值和下标,通过找差值来快速匹配答案,不用重复遍历数组,效率更高。也理解了先查找再存入哈希表,就不会重复使用同一个元素。通过这道题熟悉了哈希表的基本用法,学会了用空间换时间的解题思路。第一次做两数之和题目,一开始只想到暴力两层循环,后来学习了哈希表的写法。
2026-04-21 21:40:24
394
原创 算法训练营第8天|88. 合并两个有序数组
第一次做合并有序数组这道题,一开始没想到要从后往前遍历,总想着从前向后插入,很容易覆盖原有数据。理解了三指针思路后就清晰很多,从数组末尾放大数,就不会破坏前面的元素。也学会了处理边界情况,比如其中一个数组为空时的判断,明白了有序数组合并用双指针会更高效。
2026-04-20 22:23:13
358
原创 算法训练营第7天|142. 环形链表
第一次做环形链表找入口的题目,一开始完全看不懂快慢指针的原理。通过学习龟兔赛跑算法,明白了先用快慢指针判断链表是否有环,相遇后再把慢指针移回头结点,两个指针同步走,再次相遇的位置就是入环点。这次解题让我学会了用双指针优化空间,不用额外数组和哈希表,代码简洁高效,也理解了链表环问题的经典解法。
2026-04-19 22:23:09
121
原创 算法训练营第6天|206. 反转链表
慢慢理解了核心逻辑:先保存下一个节点,再反转指向,最后依次后移指针。通过这道题明白了链表操作一定要提前保存节点,不然容易断链,也熟悉了链表遍历的基本思路。题目链接: https://leetcode.cn/problems/reverse-linked-list/第一次写反转链表,一开始对指针变换很混乱,分不清。
2026-04-18 21:46:59
125
原创 算法训练营第5天| 203. 移除链表元素
第一次写链表删除题,最大感受是“不带头结点真的容易乱”,尤其头结点也要删的时候,逻辑绕半天。用了虚拟头结点后瞬间清晰,统一处理所有节点,不用再分情况判断。原来删除节点就是“改指针指向+释放内存”,一步步跟着指针走就不会错,终于搞懂链表是怎么删元素的了。
2026-04-17 21:46:45
377
原创 算法训练营第4天|59. 螺旋矩阵
顺时针填数字,填完一条边就把对应边界往里缩,最后注意加个判断防止重复填充就搞定啦。第一次写螺旋矩阵,核心就是。先定上下左右四个边界,按。,理清步骤就很简单~
2026-04-16 22:41:10
294
原创 算法训练营第三天|209. 长度最小的子数组
题目链接:https://leetcode.cn/problems/minimum-size-subarray-sum/视频讲解:https://www.bilibili.com/video/BV1tZ4y1q7XE
2026-04-15 21:10:59
205
原创 算法训练营第二天|27. 移除元素
原来代码不用写得多复杂,找对方法、理清逻辑,新手也能写出来。慢慢练,感觉算法也没那么吓人。不用新开数组,原地改就够,思路很巧妙。刚做这道题,一开始想着删元素,后来才明白用。
2026-04-14 20:24:17
149
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅