自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 收藏
  • 关注

原创 代码随想路第六十七天打卡

算是又对dp有更深的理解了。A * 算法精讲 (A star算法)一般 笔试或者 面试的时候,不会考察A*, 都是会结合具体业务场景问 A*算法,例如:地图导航,游戏开发 等等。其实基础版的A* 并不难,所以大家不要畏惧,理解本篇内容,甚至独立写出代码,大家可以做到,加油A * 算法精讲 (A star算法) | 代码随想录int b1, b2;int x, y;while (!que.pop();i < 8;i++) {if (!cin >> n;

2024-08-11 12:09:59 265

原创 代码随想录第六十六天打卡

这个题看的有点不是太懂,二刷继续。

2024-08-10 12:46:47 361

原创 代码随想录第六十五天打卡

今天的建议依然是,一刷的时候,能了解 原理,照着代码随想录能抄下来代码就好,就算达标。二刷的时候自己尝试独立去写,三刷的时候 才能有一定深度理解各个最短路算法。Bellman_ford 算法精讲。dijkstra(堆优化版)精讲。

2024-08-09 16:15:14 208

原创 代码随想录第六十四天打卡

就是minDist的定义和prim算法不一样,其他的都是差不多的。

2024-08-08 22:50:01 219

原创 代码随想录第六十三天打卡

kruskal算法精讲。

2024-08-08 20:10:24 237

原创 代码随想路第六十二天打卡

并查集用来写连成环的题。

2024-08-06 09:38:09 163

原创 代码随想录第六十天打卡

明确并查集解决什么问题,代码如何写,对后面做并查集类题目很有帮助。并查集裸题,学会理论基础后,本题直接可以直接刷过。并查集理论基础很重要。

2024-08-05 17:32:15 214

原创 代码随想录第五十九天打卡

败在了不会找相差一个字母的字符串。105.有向图的完全可达性深搜有细节,同样是深搜两种写法的区别,以及什么时候需要回溯操作呢?代码随想录int n, m;//记录经过了几个节点flag += 1;return;//记录访问过的节点i < m;return 0;106.岛屿的周长简单题,避免大家惯性思维,建议大家先独立做题。代码随想录int n, m;i < n;i++) {

2024-08-05 16:02:07 226

原创 代码随想录第五十八天打卡

需要点优化思路,建议先自己读题,相处一个解题方法,有时间就自己写代码,没时间就直接看题解,优化方式 会让你 耳目一新。同样优化思路也会让你耳目一新,自己想比较难想出来。基础题目 可以自己尝试做一做。和上一题差不多,尝试自己做做。104.建造最大岛屿。

2024-08-04 09:48:56 322

原创 代码随想录第五十七天

弄清楚为什么会超时,因为你第一次 幸运 没那么想,第二次可就不一定了。如果自己做的录友,题目通过了,也要仔细看第一种写法的超时版本。熟练掌握这两种写法 以及 知道区别在哪里,才算掌握的深搜。本题就是基础题了,做过上面的题目,本题很快。注意广搜的两种写法,第一种写法为什么会。注意深搜的两种写法,

2024-08-03 11:19:08 199

原创 代码随想录第五十六天打卡

大家可以在看图论理论基础的时候,很多内容 看不懂,例如也不知道 看完之后 还是不知道 邻接矩阵,邻接表怎么用, 别着急。理论基础大家先对各个概念有个印象就好,后面在刷题的过程中,每个知识点都会得到巩固。了解一下深搜的原理和过程。98. 所有可达路径。

2024-08-02 16:10:03 244

原创 代码随想录第五十五天打卡

把左边最大和右边最大就是要求面积的思路理清楚了其实后面实现就不难了。84.柱状图中最大的矩形有了之前单调栈的铺垫,这道题目就不难了。ongjiez代码随想录public:// 数组头部加入元素0// 数组尾部加入元素0st.push(0);int res=0;st.pop();if (!st.push(i);return res;我还在想怎么把栈剩余的元素给算上,原来在后面加上个0就可以了。

2024-07-14 02:21:27 282

原创 代码随想录第五十三天打卡

下次一定要把题目看完。503.下一个更大元素II这道题和 739. 每日温度 几乎如出一辙,可以自己尝试做一做代码随想录public:i<size;i<size*2;st.pop();st.push(i);return res;

2024-06-30 18:41:20 335

原创 代码随想录第五十二天打卡

dp还是要有一点基础再去做其他的题会更好一些,有些题思路确实不好想。

2024-06-28 01:11:13 251

原创 代码随想录第五十一天打卡

想了半天,结果还是没有什么思路。583. 两个字符串的删除操作本题和动态规划:115.不同的子序列 相比,其实就是两个字符串都可以删除了,情况虽说复杂一些,但整体思路是不变的。代码随想录public:i++){j++){72. 编辑距离最终我们迎来了编辑距离这道题目,之前安排题目都是为了 编辑距离做铺垫。代码随想录public:i++){j++){dp[i-1][j-1]+1的情况没有考虑到原来它就是换元素。

2024-06-27 22:50:53 305

原创 代码随想录第五十天打卡

这道题目算是 编辑距离问题 的入门题目(毕竟这里只是涉及到减法),慢慢的,后面就要来解决真正的 编辑距离问题了。其实本题和 1143.最长公共子序列 是一模一样的,大家尝试自己做一做。体会一下本题和 718. 最长重复子数组 的区别。这道题我们用贪心做过,这次 再用dp来做一遍。1143.最长公共子序列。1035.不相交的线。

2024-06-27 13:31:28 227

原创 代码随想录第四十九天打卡

本题相对于昨天的动态规划:300.最长递增子序列 最大的区别在于“连续”。先尝试自己做做,感受一下区别。今天开始正式子序列系列,本题是比较简单的,感受感受一下子序列题目的思路。稍有难度,要使用二维dp数组了。674. 最长连续递增序列。718. 最长重复子数组。300.最长递增子序列。

2024-06-27 11:51:29 230

原创 代码随想录第四十八天打卡

相对122.买卖股票的最佳时机II ,本题只需要在计算卖出操作的时候减去手续费就可以了,代码几乎是一样的,可以尝试自己做一做。本题加了一个冷冻期,状态就多了,有点难度,大家要把各个状态分清,思路才能清晰。本题是123.买卖股票的最佳时机III 的进阶版。714.买卖股票的最佳时机含手续费。309.最佳买卖股票时机含冷冻期。188.买卖股票的最佳时机IV。

2024-06-27 10:55:32 226

原创 代码随想录第四十六天打卡

我觉得这道题贪心更快一些。122.买卖股票的最佳时机II动态规划,股票问题第二弹 | LeetCode:122.买卖股票的最佳时机II_哔哩哔哩_bilibili代码随想录public:i++){竟然先把第二题写出来了。123.买卖股票的最佳时机III这道题一下子就难度上来了,关键在于至多买卖两次,这意味着可以买卖一次,可以买卖两次,也可以不买卖。动态规划,股票至多买卖两次,怎么求?| LeetCode:123.买卖股票最佳时机III_哔哩哔哩_bilibili代码随想录。

2024-06-23 19:42:36 344

原创 代码随想录第四十五天打卡

337.打家劫舍III。213.打家劫舍II。

2024-06-22 12:31:15 287 1

原创 代码随想录第四十四天打卡

感觉这道题不是传统的遍历物品。

2024-06-22 11:33:28 287

原创 代码随想录第四十三天打卡

这道题目 爬楼梯之前我们做过,这次再用完全背包的思路来分析一遍。518. 零钱兑换 II。70. 爬楼梯 (进阶)377. 组合总和 Ⅳ。

2024-06-20 01:32:48 248

原创 代码随想录第四十二天打卡

真没想到使用这种方式写的。494. 目标和大家重点理解 递推公式:dp[j] += dp[j - nums[i]],这个公式后面的提问 我们还会用到。动态规划之背包问题,装满背包有多少种方法?| LeetCode:494.目标和_哔哩哔哩_bilibili代码随想录public:int sum=0;dp[0]=1;j--){背包的首要问题是找到一个目标,然后是记忆化遍历。474.一和零。

2024-06-18 20:37:50 241

原创 代码随想录第四十一天打卡

本题是 01背包的应用类题目。416. 分割等和子集。

2024-06-17 21:34:28 278

原创 代码随想录第三十九天打卡

被一个初始化给整爆了。96..不同的二叉搜索树 (可跳过)本题思路并不容易想,一刷建议可以跳过。如果学有余力,可以看视频理解一波。代码随想录动态规划找到子状态之间的关系很重要!| LeetCode:96.不同的二叉搜索树_哔哩哔哩_bilibili这个之后再写。

2024-06-17 10:01:13 268

原创 代码随想录第三十八天打卡

这道题目力扣改了题目描述了,现在的题目描述清晰很多,相当于明确说 第一步是不用花费的。很简单的动规入门题,但简单题使用来掌握方法论的,还是要有动规五部曲来分析。本题大家先自己想一想, 之后会发现,和 斐波那契数 有点关系。更改题目描述之后,相当于是 文章中 「拓展」的解法。746. 使用最小花费爬楼梯。509. 斐波那契数。

2024-06-14 10:52:03 168

原创 代码随想录第三十七天打卡

昨天的思路今天就用不了了。738.单调递增的数字代码随想录public:i>0;s[i-1]--;i<s.size();整数类型无法修改的时候,应该想到用string。968.监控二叉树 (可跳过)本题是贪心和二叉树的一个结合,比较难,一刷大家就跳过吧。代码随想录/*** int val;* };if (!res++;return 1;return -1;

2024-06-14 00:36:17 201

原创 代码随想录第三十六天打卡|860.柠檬水找零 ,406.根据身高重建队列 ,452. 用最少数量的箭引爆气球

感觉思路很巧妙。452. 用最少数量的箭引爆气球本题是一道 重叠区间的题目,好好做一做,因为明天三道题目,都是 重叠区间。代码随想录public:int res=1;res++;return res;这时间复杂度不是nlngn吗?怎么给我运行了两秒。

2024-06-12 22:38:33 217

原创 代码随想录第三十五天打卡|1005.K次取反后最大化的数组和,134. 加油站,135. 分发糖果

这道题写出来很好写,但是优化到最简感觉还是有难度的。134. 加油站本题有点难度,不太好想,推荐大家熟悉一下方法二代码随想录public:int sum=0;total+=val;total=0;index=i+1;135. 分发糖果本题涉及到一个思想,就是想处理好一边再处理另一边,不要两边想着一起兼顾,后面还会有题目用到这个思路代码随想录public:int mi=0;i++){i>0;

2024-06-11 15:35:55 255

原创 代码随想录第三十二天打卡|122.买卖股票的最佳时机II,55. 跳跃游戏,45.跳跃游戏II

这道一写过几遍了,直接秒了。55. 跳跃游戏本题如果没接触过,很难想到,所以不要自己憋时间太久,读题思考一会,没思路立刻看题解代码随想录public:int res=0;写过后就不是很难了。45.跳跃游戏II本题同样不容易想出来。贪心就是这样,有的时候 会感觉简单到离谱,有时候,难的不行,主要是不容易想到。代码随想录public:int res=0;i++){res++;return res;

2024-06-08 22:15:36 305

原创 代码随想录第三十一天打卡|455.分发饼干 ,376. 摆动序列 , 53. 最大子序和 ,

这道题真的细节好多。53. 最大子序和代码随想录public://表示当前最大的结果int cur=0;//表示当前的和i++){return res;这道题也想不出来呀。

2024-06-07 11:43:13 238

原创 代码随想录第三十天打卡|332.重新安排行程, 51. N皇后, 37. 解数独

二刷的时候这题还是没有思路,不过比一刷的时候答案都看不懂要强了。51. N皇后(可跳过)代码随想录这就是传说中的N皇后?回溯算法安排!| LeetCode:51.N皇后_哔哩哔哩_bilibilipublic://再检查纵向的i<x;i++){//最后检查斜向的i--,j++){i--,j--){return;y<n;感觉思路比上一题要简单,实现难一些。37. 解数独(可跳过)代码随想录回溯算法二维递归?解数独不过如此!

2024-06-06 21:20:35 360

原创 代码随想录第二十九天打卡| 491.递增子序列,46.全排列,47.全排列 II

感觉明白了。46.全排列本题重点感受一下,排列问题 与 组合问题,组合总和,子集问题的区别。为什么排列问题不用 startIndex代码随想录组合与排列的区别,回溯算法求解的时候,有何不同?| LeetCode:46.全排列_哔哩哔哩_bilibilipublic:return;47.全排列 II本题 就是我们讲过的 40.组合总和II 去重逻辑 和 46.全排列 的结合,可以先自己做一下,然后重点看一下 文章中 我讲的拓展内容。

2024-06-05 22:52:48 445

原创 算法随想录第二十八天打卡|93.复原IP地址 , 78.子集 ,90.子集II

这道题还是有很多坑的,即使做了分割回文串,再做这道题还是会感到吃力。78.子集子集问题,就是收集树形结构中,每一个节点的结果。整体代码其实和 回溯模板都是差不多的。代码随想录回溯算法解决子集问题,树上节点都是目标集和!| LeetCode:78.子集_哔哩哔哩_bilibilipublic:i++){return res;90.子集II大家之前做了 40.组合总和II 和 78.子集 ,本题就是这两道题目的结合,建议自己独立做一做,本题涉及的知识,之前都讲过,没有新内容。

2024-06-05 00:13:10 259

原创 代码随想录第二十七天打卡|39. 组合总和,40.组合总和II,131.分割回文串

我以为会不再需要startindex了。结果还是要传startindex,不然当添加了3之后还可能会添加2。40.组合总和II本题开始涉及到一个问题了:去重。注意题目中给我们 集合是有重复元素的,那么求出来的 组合有可能重复,但题目要求不能有重复组合。代码随想录回溯算法中的去重,树层去重树枝去重,你弄清楚了没?| LeetCode:40.组合总和II_哔哩哔哩_bilibilipublic:return;其实感觉和三数之和有点相似。

2024-06-03 20:05:44 284

原创 代码随想录第二十五天打卡|216.组合总和III,17.电话号码的字母组合

我记得一刷的时候,开始回溯章节我是十分折磨的,没想到而刷的时候,这些题竟然秒了。17.电话号码的字母组合本题大家刚开始做会有点难度,先自己思考20min,没思路就直接看题解。代码随想录还得用回溯算法!| LeetCode:17.电话号码的字母组合_哔哩哔哩_bilibilipublic:return;if (!return res;必须保证它的每个值都要遍历到,所以就是liangcengfor循环。

2024-06-01 11:55:07 175

原创 代码随想录第二十四天打卡| 77. 组合

之前刷的回溯题还是没有忘记的。

2024-05-31 09:29:34 236

原创 代码随想录第二十三天打卡|669. 修剪二叉搜索树 ,108.将有序数组转换为二叉搜索树 , 538.把二叉搜索树转换为累加树

你得在回溯的时候进行判断,不然你在根节点就满足情况的话不就直接返回了吗?108.将有序数组转换为二叉搜索树本题就简单一些,可以尝试先自己做做。代码随想录构造平衡二叉搜索树!| LeetCode:108.将有序数组转换为二叉搜索树_哔哩哔哩_bilibili/*** int val;* };*/private:public:我觉得比之前的题还难想一些。538.把二叉搜索树转换为累加树。

2024-05-30 19:28:51 183

原创 算法随想录第二十二天打卡|235. 二叉搜索树的最近公共祖先 , 701.二叉搜索树中的插入操作, 450.删除二叉搜索树中的节点

感觉其实也不好想呀,遇到的第一个节点的值在两个中间的就是最近祖先。701.二叉搜索树中的插入操作本题比想象中的简单,大家可以先自己想一想应该怎么做,然后看视频讲解,就发现 本题为什么比较简单了。代码随想录原来这么简单?| LeetCode:701.二叉搜索树中的插入操作_哔哩哔哩_bilibili/*** int val;* };root){我一直在想我应该如何在找到要插入的点后,找到它的父亲节点,通过root->left的方式可以修改树里面的值。

2024-05-30 14:29:04 380

原创 算法随想录第二十一天打卡|530.二叉搜索树的最小绝对差, 501.二叉搜索树中的众数,236. 二叉树的最近公共祖先

感觉确实,回溯什么在看视频之前不是很清楚,看完之后就清晰了。

2024-05-29 21:59:51 246

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除