- 博客(54)
- 收藏
- 关注
原创 代码随想录完结总结篇
之前的我很少能够坚持长时间的学习,尤其是在面对其他学术任务的压力下。每天的坚持,虽然看似微小,但时间的积累最终给了我满意的答案。训练营的每日计划,指引着我前进的方向,提醒和督促我不断做题,不断进步。对于像我这样自制力相对较弱的人来说,训练营的安排无疑是一种巨大的帮助。它不仅提供了系统的学习计划,更通过每日的打卡提醒和群友的交流,还有鱼哥的答疑,帮助我克服惰性,保持学习的动力和节奏。为期60天的LeetCode训练营,不仅让我在编程领域有了质的飞跃,更让我体会到了坚持的力量。
2024-08-08 00:55:28
181
原创 代码随想录训练营第62天
Floyd 算法代码很简单,但真正理解起原理 还是需要花点功夫,大家在看代码的时候,会发现 Floyd 的代码很简单,甚至看一眼就背下来了,但我为了讲清楚原理,本篇还是花了大篇幅来讲解。一般 笔试或者 面试的时候,不会考察A*, 都是会结合具体业务场景问 A*算法,例如:地图导航,游戏开发 等等。其实基础版的A* 并不难,所以大家不要畏惧,理解本篇内容,甚至独立写出代码,大家可以做到,加油。A * 算法精讲 (A star算法)最各个最短路算法有个全面的了解。Floyd 算法精讲。
2024-08-07 11:17:35
284
原创 代码随想录训练营第61天
一刷的时候,能理解 原理,知道Bellman_ford 解决不同场景的问题。今天大家会感受到 Bellman_ford 算法系列在不同场景下的应用。二刷的时候自己尝试独立去写,三刷的时候 才能有一定深度理解各个最短路算法。Bellman_ford 队列优化算法(又名SPFA),照着代码随想录能抄下来代码就好,就算达标。bellman_ford之单源有限最短路。bellman_ford之判断负权回路。
2024-08-05 11:13:39
161
原创 代码随想录算法训练营第59天
今天的建议依然是,一刷的时候,能了解 原理,照着代码随想录能抄下来代码就好,就算达标。二刷的时候自己尝试独立去写,三刷的时候 才能有一定深度理解各个最短路算法。dijkstra(堆优化版)精讲。Bellman_ford 算法精讲。
2024-08-03 21:45:18
219
原创 代码随想录算法训练营第58天
后面几天都是最短路系列了,对于最短路系列,我的建议是,如果第一次接触最短路算法的话,对于一刷的录友们,不要强行去逼迫自己去学透,很难刚接触到最短路算法就学透。,二刷的时候 再尝试自己去写出来。三刷的时候,差不多才能把最短路吃透。拓扑排序看上去很复杂,其实了解其原理之后,代码不难。能看懂原理,能照着代码随想录把代码抄下来就可以了。dijkstra(朴素版)精讲。
2024-08-03 21:38:03
119
原创 代码随想录算法训练营第57天
今天在学习prim 和 kruskal的同时,也要清楚这两个算法的区别所在。学习两种最小生成树算法。kruskal算法精讲。
2024-08-03 20:51:55
231
原创 代码随想录算法训练营第56天
上面两道题目是不是感觉做出自信了,感觉并查集不过如此?并查集应用类题目,关键是如何把题意转化成并查集问题。来这道题目 给大家适当一些打击, 难度上来了。
2024-08-03 20:44:36
132
原创 代码随想录算法训练营第55天
明确并查集解决什么问题,代码如何写,对后面做并查集类题目很有帮助。并查集裸题,学会理论基础后,本题直接可以直接刷过。并查集理论基础很重要。
2024-08-03 20:37:31
206
原创 代码随想录算法训练营第54天
经过上面的练习,大家可能会感觉 广搜不过如此,都刷出自信了,本题让大家初步感受一下,广搜难不在广搜本身,而是如何应用广搜。深搜有细节,同样是深搜两种写法的区别,以及什么时候需要回溯操作呢?简单题,避免大家惯性思维,建议大家先独立做题。
2024-08-02 16:20:47
185
原创 代码随想录算法训练营第52天
需要点优化思路,建议先自己读题,相处一个解题方法,有时间就自己写代码,没时间就直接看题解,优化方式 会让你 耳目一新。同样优化思路也会让你耳目一新,自己想比较难想出来。基础题目 可以自己尝试做一做。和上一题差不多,尝试自己做做。101.孤岛的总面积。104.建造最大岛屿。
2024-08-02 16:13:25
112
原创 代码随想录算法训练营第51天
弄清楚为什么会超时,因为你第一次 幸运 没那么想,第二次可就不一定了。如果自己做的录友,题目通过了,也要仔细看第一种写法的超时版本。熟练掌握这两种写法 以及 知道区别在哪里,才算掌握的深搜。注意广搜的两种写法,第一种写法为什么会超时,本题就是基础题了,做过上面的题目,本题很快。注意深搜的两种写法,
2024-08-02 12:49:43
116
原创 代码随想录算法训练营第50天
大家可以在看图论理论基础的时候,很多内容 看不懂,例如也不知道 看完之后 还是不知道 邻接矩阵,邻接表怎么用, 别着急。理论基础大家先对各个概念有个印象就好,后面在刷题的过程中,每个知识点都会得到巩固。了解一下深搜的原理和过程。98. 所有可达路径。
2024-08-02 12:44:40
215
原创 代码随想录算法训练营第49天
建议是掌握 双指针 和单调栈,因为在面试中 写出单调栈可能 有点难度,但双指针思路更直接一些。在时间紧张的情况有,能写出双指针法也是不错的,然后可以和面试官在慢慢讨论如何优化。接雨水这道题目是 面试中特别高频的一道题,也是单调栈 应用的题目,大家好好做做。有了之前单调栈的铺垫,这道题目就不难了。
2024-08-02 12:38:54
160
原创 代码随想录算法训练营第48天
大家可以读题,思考暴力的解法,然后在看单调栈的解法。就能感受出单调栈的巧妙。这道题和 739. 每日温度 几乎如出一辙,可以自己尝试做一做。本题和 739. 每日温度 看似差不多,其实 有加了点难度。今天正式开始单调栈,这是单调栈一篇扫盲题目,也是经典题。496.下一个更大元素 I。503.下一个更大元素II。
2024-08-02 12:36:34
130
原创 代码随想录算法训练营第47天
647. 回文子串,求的是回文子串,而本题要求的是回文子序列, 大家要搞清楚两者之间的区别。动态规划解决的经典题目,如果没接触过的话,别硬想 直接看题解。516.最长回文子序列。
2024-08-02 12:08:25
128
原创 代码随想录算法训练营第45天
本题和动态规划:115.不同的子序列 相比,其实就是两个字符串都可以删除了,情况虽说复杂一些,但整体思路是不变的。但相对于刚讲过 392.判断子序列,本题 就有难度了 ,感受一下本题和 392.判断子序列 的区别。最终我们迎来了编辑距离这道题目,之前安排题目都是为了 编辑距离做铺垫。583. 两个字符串的删除操作。115.不同的子序列。
2024-08-02 12:01:00
209
原创 代码随想录算法训练营第44天
这道题目算是 编辑距离问题 的入门题目(毕竟这里只是涉及到减法),慢慢的,后面就要来解决真正的 编辑距离问题了。其实本题和 1143.最长公共子序列 是一模一样的,大家尝试自己做一做。体会一下本题和 718. 最长重复子数组 的区别。这道题我们用贪心做过,这次 再用dp来做一遍。1143.最长公共子序列。1035.不相交的线。
2024-08-02 11:36:43
322
原创 代码随想录算法训练营第43天
动态规划:300.最长递增子序列 最大的区别在于“连续”。先尝试自己做做,感受一下区别。今天开始正式子序列系列,本题是比较简单的,感受感受一下子序列题目的思路。稍有难度,要使用二维dp数组了。674. 最长连续递增序列。718. 最长重复子数组。300.最长递增子序列。
2024-08-02 11:34:10
147
原创 代码随想录算法训练营第42天
相对122.买卖股票的最佳时机II ,本题只需要在计算卖出操作的时候减去手续费就可以了,代码几乎是一样的,可以尝试自己做一做。本题加了一个冷冻期,状态就多了,有点难度,大家要把各个状态分清,思路才能清晰。本题是123.买卖股票的最佳时机III 的进阶版。714.买卖股票的最佳时机含手续费。309.最佳买卖股票时机含冷冻期。188.买卖股票的最佳时机IV。股票问题做一个总结吧。
2024-08-02 11:31:24
133
原创 代码随想录算法训练营第41天
这道题一下子就难度上来了,关键在于至多买卖两次,这意味着可以买卖一次,可以买卖两次,也可以不买卖。123.买卖股票的最佳时机III。122.买卖股票的最佳时机II。121. 买卖股票的最佳时机。
2024-08-02 11:14:35
199
原创 代码随想录算法训练营第38天
本题 和 322. 零钱兑换 基本是一样的,大家先自己尝试做一做。如果求组合数就是外层for循环遍历物品,内层for遍历背包。如果求排列数就是外层for遍历背包,内层for循环遍历物品。这句话结合本题 大家要好好理解。关于多重背包,你该了解这些!
2024-08-02 11:04:09
173
原创 代码随想录算法训练营第37天
这道题目 爬楼梯之前我们做过,这次再用完全背包的思路来分析一遍。518. 零钱兑换 II。70. 爬楼梯 (进阶)377. 组合总和 Ⅳ。
2024-08-02 11:00:39
143
原创 代码随想录算法训练营第36天
通过这道题目,大家先粗略了解, 01背包,完全背包,多重背包的区别,不过不用细扣,因为后面 对于 完全背包,多重背包 还有单独讲解。大家重点理解 递推公式:dp[j] += dp[j - nums[i]],这个公式后面的提问 我们还会用到。1049. 最后一块石头的重量 II。很像了,可以尝试先自己思考做一做。416. 分割等和子集。
2024-08-01 12:22:13
130
原创 代码随想录训练营第34天
本题思路并不容易想,一刷建议可以跳过。如果学有余力,可以看视频理解一波。本题思路并不容易想,一刷建议可以跳过。如果学有余力,可以看视频理解一波。本题大家掌握动态规划的方法就可以。数论方法 有点非主流,很难想到。.不同的二叉搜索树 (可跳过)63. 不同路径 II。整数拆分 (可跳过)
2024-08-01 11:10:53
286
原创 代码随想录训练营第33天
这道题目力扣改了题目描述了,现在的题目描述清晰很多,相当于明确说 第一步是不用花费的。如果没做过动态规划的题目,看我讲的理论基础,会有感觉 是不是简单题想复杂了?无论大家之前对动态规划学到什么程度,一定要先看 我讲的 动态规划理论基础。其实并没有,我讲的理论基础内容,在动规章节所有题目都有运用,所以很重要!很简单的动规入门题,但简单题使用来掌握方法论的,还是要有动规五部曲来分析。本题大家先自己想一想, 之后会发现,和 斐波那契数 有点关系。如果做过动态规划题目的录友,看我的理论基础 就会感同身受了。
2024-08-01 11:03:11
266
原创 代码随想录训练营第31天
可以看看贪心算法的总结,贪心本来就没啥规律,能写出个总结篇真的不容易了。本题也是重叠区间问题,如果昨天三道都吸收的话,本题就容易理解了。本题是贪心和二叉树的一个结合,比较难,一刷大家就跳过吧。968.监控二叉树 (可跳过)738.单调递增的数字。
2024-08-01 11:01:04
208
原创 代码随想录训练营第30天
今天的三道题目,都算是 重叠区间 问题,大家可以好好感受一下。都属于那种看起来好复杂,这种题还是属于那种,做过了也就会了,没做过就很难想出来。452. 用最少数量的箭引爆气球。但一看贪心解法,惊呼:这么巧妙。不过大家把如下三题做了之后,重叠区间 基本上差不多了。435. 无重叠区间。763.划分字母区间。
2024-08-01 10:51:46
127
原创 代码随想录算法训练营第29天
本题涉及到一个思想,就是想处理好一边再处理另一边,不要两边想着一起兼顾,后面还会有题目用到这个思路。本题有点难度,和分发糖果类似,不要两头兼顾,处理好一边再处理另一边。本题看上好像挺难,其实很简单,大家先尝试自己做一做。本题有点难度,不太好想,推荐大家熟悉一下方法二。406.根据身高重建队列。
2024-07-31 16:54:31
156
原创 代码随想录第28天
本题同样不容易想出来。贪心就是这样,有的时候 会感觉简单到离谱,有时候,难的不行,主要是不容易想到。本题如果没接触过,很难想到,所以不要自己憋时间太久,读题思考一会,没思路立刻看题解。本题简单一些,估计大家不用想着贪心 ,用自己直觉也会有思路。本题大家可以先自己思考一下然后再看题解,会有惊喜!1005.K次取反后最大化的数组和。122.买卖股票的最佳时机II。第八章 贪心算法 part02。
2024-07-31 16:41:15
136
原创 代码随想录训练营第27天
基本贪心的题目 有两个极端,要不就是特简单,要不就是死活想不出来。,所以大家了解贪心算法 就了解它没有规律的本质就够了。学完贪心之后再去看动态规划,就会了解贪心和动规的区别。贪心算法其实就是没有什么规律可言。不用花心思去研究其规律,没有思路就立刻看题解。
2024-07-31 16:31:27
132
原创 代码随想录算法训练营26天
因为 一刷 也不求大家能把这么难的问题解决,大家目前能了解一下题目的要求,了解一下解题思路,不求能直接写出代码,先大概熟悉一下这些题,二刷的时候,随着对回溯算法的深入理解,再去解决如下三题。N皇后这道题目还是很经典的,一刷的录友们建议看看视频了解了解大体思路 就可以 (如果没时间本次就直接跳过) ,先有个印象,二刷的时候重点解决。本题重点感受一下,排列问题 与 组合问题,组合总和,子集问题的区别。同样,一刷的录友们建议看看视频了解了解大体思路(如果没时间本次就直接跳过),先有个印象,二刷的时候重点解决。
2024-07-31 16:14:25
217
原创 代码随想录训练营24天
大家之前做了 40.组合总和II 和 78.子集 ,本题就是这两道题目的结合,建议自己独立做一做,本题涉及的知识,之前都讲过,没有新内容。子集问题,就是收集树形结构中,每一个节点的结果。整体代码其实和 回溯模板都是差不多的。本期本来是很有难度的,不过 大家做完 分割回文串 之后,本题就容易很多了。
2024-07-27 10:43:04
178
原创 代码随想录算法训练营第二十三天
注意题目中给我们 集合是有重复元素的,那么求出来的 组合有可能重复,但题目要求不能有重复组合。本题是 集合里元素可以用无数次,那么和组合问题的差别 其实仅在于 startIndex上的控制。,大家先看视频来理解 分割问题,明天还会有一道分割问题,先打打基础。本题开始涉及到一个问题了:去重。
2024-07-24 11:47:34
155
原创 代码随想录算法训练营第二十二天
对着 在 回溯算法理论基础 给出的 代码模板,来做本题组合问题,大家就会发现 写回溯算法套路。在回溯算法解决实际问题的过程中,大家会有各种疑问,先看视频介绍,基本可以解决大家的疑惑。本题关于剪枝操作是大家要理解的重点,因为后面很多回溯算法解决的题目,都是这个剪枝套路。本题大家刚开始做会有点难度,先自己思考20min,没思路就直接看题解。如果把 组合问题理解了,本题就容易一些了。17.电话号码的字母组合。216.组合总和III。
2024-07-24 11:32:11
169
原创 代码随想录算法训练营第二十一天
本题也不难,在 求二叉搜索树的最小绝对差 和 众数 那两道题目 都讲过了 双指针法,思路是一样的。,比 添加增加和删除节点难的多,建议先看视频理解。108.将有序数组转换为二叉搜索树。本题就简单一些,可以尝试先自己做做。538.把二叉搜索树转换为累加树。669. 修剪二叉搜索树。
2024-07-24 09:15:02
213
原创 代码随想录算法训练营第二十天
本题比想象中的简单,大家可以先自己想一想应该怎么做,然后看视频讲解,就发现 本题为什么比较简单了。相对于 二叉树的最近公共祖先 本题就简单一些了,因为 可以利用二叉搜索树的特性。相对于 插入操作,本题就有难度了,涉及到改树的结构。235. 二叉搜索树的最近公共祖先。701.二叉搜索树中的插入操作。450.删除二叉搜索树中的节点。
2024-07-24 09:10:29
182
原创 代码随想录算法训练营第十九天
和 530差不多双指针思路,不过 这里涉及到一个很巧妙的代码技巧。需要领悟一下二叉树遍历上双指针操作,优先掌握递归。本题其实是比较难的,可以先看我的视频讲解。可以先自己做做看,然后看我的视频讲解。530.二叉搜索树的最小绝对差。236. 二叉树的最近公共祖先。501.二叉搜索树中的众数。
2024-07-24 09:07:21
157
原创 代码随想录算法训练营第十七天
又是构造二叉树,昨天大家刚刚做完 中序后序确定二叉树,今天做这个 应该会容易一些, 先看视频,好好体会一下 为什么构造二叉树都是 前序遍历。这次是一起操作两个二叉树了, 估计大家也没一起操作过两个二叉树,也不知道该如何一起操作,可以看视频先理解一下。但本题是有陷阱的,可以自己先做一做,然后在看题解,看看自己是不是掉陷阱里了。递归和迭代 都可以掌握以下,因为本题比较简单, 了解一下 二叉搜索树的特性。遇到 搜索树,一定想着中序遍历,这样才能利用上特性。700.二叉搜索树中的搜索。98.验证二叉搜索树。
2024-07-24 08:59:40
239
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人