自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 二刷代码随想录第25天

【代码】二刷代码随想录第25天。

2024-12-10 10:58:30 235

原创 二刷代码随想录第24天

【代码】二刷代码随想录第15天。

2024-12-07 17:06:52 260

原创 二刷代码随想录第23天

【代码】二刷代码随想录第23天。

2024-12-05 18:17:40 334

原创 二刷代码随想录第22天

【代码】二刷代码随想录第22天。

2024-12-04 15:56:10 371

原创 二刷代码随想录第21天

【代码】二刷代码随想录第21天。

2024-12-03 10:54:40 166

原创 二刷代码随想录第20天

【代码】二刷代码随想录第20天。

2024-12-02 13:35:17 316

原创 二刷代码随想录第18天

【代码】二刷代码随想录第18天。

2024-12-02 10:35:36 220

原创 二刷代码随想录第17天

【代码】二刷代码随想录第17天。

2024-11-29 18:57:18 205

原创 二刷代码随想录第16天

【代码】二刷代码随想录第15天。

2024-11-28 17:39:11 351

原创 二刷代码随想录第15天

难点在于当我递归到叶子节点的时候,无法判断当前叶子节点是不是左子节点。

2024-11-28 15:28:07 342

原创 二刷代码随想录第14天

【代码】二刷代码随想录第14天。

2024-11-26 17:50:31 165

原创 二刷代码随想录第13天

【代码】二刷代码随想录第13天。

2024-11-25 20:44:01 564

原创 二刷代码随想录第十一天

【代码】二刷代码随想录第十一天。

2024-11-23 15:32:16 253

原创 二刷代码随想录第十天

再判断栈顶元素和当前要加入的是否匹配。最后判断栈的元素是否为空。

2024-11-22 11:24:32 348

原创 二刷代码随想录第九天

【代码】二刷代码随想录第九天。

2024-11-21 20:28:15 205

原创 二刷代码随想录第八天

【代码】二刷代码随想录第八天。

2024-11-20 10:58:01 251

原创 二刷代码随想录第七天

【代码】二刷代码随想录第七天。

2024-11-19 18:34:01 406

原创 二刷代码随想录第六天

【代码】二刷代码随想录第五天。

2024-11-18 12:47:04 448

原创 二刷代码随想录第四天

判断链表环的入口

2024-11-16 15:36:27 357

原创 二刷代码随想录第三天

【代码】二刷代码随想录第三天。

2024-11-15 12:52:20 374

原创 二刷代码随想录第二天

【代码】二刷代码随想录第二天。

2024-11-14 14:03:33 327

原创 二刷代码随想录第一天

【代码】二刷代码随想录第一天。

2024-11-13 15:24:09 214 1

原创 代码随想录算法训练营第58天 [101.孤岛的总面积 102.沉没孤岛 103.水流问题 104.建造最大岛屿]

思路:从四个边缘开始深搜,搜到了标记为2,这样所有为2和0的就不是孤岛,所有为1的就是孤岛,最后把2变为1,把1变为0。思路: 某个点能不能流到第一组边界和第二组边界 转化为 第一组边界和第二组边界能不能流到某个点。思路:给不同的岛屿标记不同的编号mark,再遍历所有为海水的区域将其变为陆地,计算联通起来的最大面积。思路:从四个边缘开始深搜,搜到了标记为2,这样所有为2和0的就不是孤岛,所有为1的就是孤岛。做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。

2024-07-08 18:26:06 364

原创 代码随想录算法训练营第56,57天 [卡玛网98. 所有可达路径, 卡玛网99. 岛屿数量,卡玛网100. 岛屿的最大面积]

思路:邻接矩阵和邻接表两种方法。做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。

2024-07-04 00:20:07 326

原创 代码随想录算法训练营第55天 [ 42. 接雨水 84.柱状图中最大的矩形]

思路:找到左边第一个小于我的和右边第一个小于我的,区间左右都要添加一个0,防止单纯的递增heights或者单纯递减的heights没办法收集答案。思路:找到左边第一个大于我的和右边第一个大于我的。做题状态:看解析后做出来了。做题状态:看解析后做出来了。

2024-07-01 22:49:37 286

原创 代码随想录算法训练营第53天 [ 739. 每日温度 496.下一个更大元素 I 503.下一个更大元素II ]

思路:可以模拟遍历两次,每次的i都取 i%nums.size()思路:用map记录nums1里值和下标的关系。做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。

2024-07-01 16:03:16 357

原创 代码随想录算法训练营第52天 [ 647. 回文子串 516.最长回文子序列 ]

做题状态:看解析后做出来了。做题状态:看解析后做出来了。

2024-07-01 02:14:50 281

原创 代码随想录算法训练营第51天 [115.不同的子序列 583. 两个字符串的删除操作 72. 编辑距离 ]

相等的时候 dp[i][j] = dp[i - 1][j - 1] + dp[i - 1][j]思路:dp[i][j] 以t[j-1]为结尾的字符串在 以s[i-1]为结尾的字 符串出现个数。不相等的时候 dp[i][j] = dp[i - 1][j];思路:看注释,不相等的时候的增、删、改。做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。

2024-07-01 01:09:15 334

原创 代码随想录算法训练营第50天 [1143.最长公共子序列 1035.不相交的线 53. 最大子序和 392.判断子序列 ]

dp[i][j]:长度为[0, i - 1]的字符串text1与长度为[0, j - 1]的字符串text2的最长公共子序列为dp[i][j],如果text[i-1] == text[j-1]. dp[i][j] = dp[i-1][j-1]+1 从左上角推导而来。思路:dp[i] = max(dp[i-1]+nums[i],nums[i])做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。思路:和上一题差不多。

2024-06-30 18:26:02 227

原创 代码随想录算法训练营第一天 [300.最长递增子序列 674. 最长连续递增序列 718. 最长重复子数组]

设计为i-1,初始化的时候会方便很多,dp[0][j] 和 dp[i][0]其实是没有意义的,如果第一个数相同dp[1][1] = dp[0][0]+1 并且dp[1][1] = 1,所以把dp[0][0]初始化为0。思路:dp[i] 以nums[i]为结尾的递增子序列最大长度,下标为i的数,需要和下标为0开始一直到下标为i-1的数去做比较。dp[i][j] 以nums1[i-1] 和nums[j-1]为下标的最长公共子序列长度为dp[i][j]**一、300.最长递增子序列 **

2024-06-30 17:02:02 239

原创 代码随想录算法训练营第48天 [188.买卖股票的最佳时机IV 309.最佳买卖股票时机含冷冻期 714.买卖股票的最佳时机含手续费]

0 :持有股票状态(持续持有/前一天买了) 前一天有可能是【持续不持有状态1】 或者【冷冻期状态3】思路:最多k笔交易,也就是最多买卖2k次,奇数次都是买,偶数次都是卖。1 :不持有股票状态 (持续不持有/前2天卖了,渡过一天冷冻期)思路:每次卖出的时候扣掉手续费就好了。2 :不持有股票状态 (今天卖出)思路: dp[i][j]3 :今天是冷冻期,持续一天。做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。

2024-06-30 15:17:39 235

原创 代码随想录算法训练营第46天 [ 121. 买卖股票的最佳时机 122.买卖股票的最佳时机II 123.买卖股票的最佳时机III ]

思路:dp[i][0] 第i天持有股票的最大利润 dp[i][1] 第i天不持有股票的最大利润。思路:因为是多次买卖,所以每次买卖前要考虑前一天持有状态。做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。

2024-06-22 16:18:24 380

原创 代码随想录算法训练营第45天 [ 198.打家劫舍 213.打家劫舍II 337.打家劫舍III ]

思路:要么第一家和最后一家都不偷,要不只偷第一家,要不只偷第二家(后面两种情况的答案包含了第一种情况)思路:递归的时候返回本层的dp数组。做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。

2024-06-22 01:54:22 287

原创 代码随想录算法训练营第44天 [ 322. 零钱兑换 279.完全平方数 139.单词拆分]

递推公式 dp[j] = min(dp[j] ,dp[j-coins[i]] + 1)dp[n] 表示 n的完全平方数的最少数量为dp[n] 因为是最少数量。dp[i] 下标为i的 背包 所需硬币的最小值为 dp[i]如果求组合数就是外层for循环遍历物品,内层for遍历背包。如果求排列数就是外层for遍历背包,内层for循环遍历物品。递推公式 dp[j] = dp[j-i * i]+1;做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。无限使用-> 完全背包。

2024-06-21 21:14:17 396

原创 代码随想录算法训练营第43天 [完全背包 518. 零钱兑换 II 377. 组合总和 Ⅳ 70. 爬楼梯]

思路:完全背包应用 求多少种的递推公式时 dp[j] += dp[j - weight[i]],初始化dp[0] = 1。思路:完全背包应用,求多少种的递推公式时 dp[j] += dp[j - weight[i]],初始化dp[0] = 1。做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。

2024-06-20 01:39:13 429

原创 代码随想录算法训练营第42天 [1049. 最后一块石头的重量 II 494. 目标和 474.一和零]

所以转化为 重量之和的一半 target容量的背包,尽可能装满,石头的重量和价值都是stones[i]思路:石头相撞重量最小,最小的情况就是刚好分为两组大小相同的,这样相撞后重量就为0。数组元素中的和为sum,数组元素加了符号后的和为targeet。思路:一共有str种物品,要同时满足m个0的背包和n个1的背包。递推公式 dp[j] += dp[j-nums[i]]dp[j] 表示容量为j的背包,有dp[4]种方式。dp[j] 容量为j的背包最大重量为dp[j]做题状态:看解析后做出来了。

2024-06-18 20:59:03 314

原创 代码随想录算法训练营第41天 [01背包的理论基础,二维数组解法,一维数组解法,416. 分割等和子集]

思路:dp数组, dp[i][j]代表行李箱空间为j的情况下,从下标为[0, i]的物品里面任意取,能达到的最大价值,递推公式为 dp[i][j] = max(dp[i-1][j],dp[i-1][j-weight[i]]+value[i])二维数组的递推公式为 dp[i][j] = max(dp[i-1][j],dp[i-1][j-weight[i]+value[i])一维数组的递推公式为 dp[j] = max(dp[j],dp[j-weight[i]+value[i])做题状态:看解析后做出来了。

2024-06-17 23:46:34 236

原创 代码随想录算法训练营第39天 [ 62.不同路径 63. 不同路径 II. 343. 整数拆分 96..不同的二叉搜索树]

思路:1.障碍物的点dp[i][j]=0 2.初始化的时候,如果遇到障碍物了,如果是上面一层,那障碍物右边初始化都是0,如果是左边一列,那障碍物下面都是0。思路:一共n个数,从1开始,以1为头节点—以n为头节点,假设头节点为j,那么左子树个数为j-1,右子树个数为i-j。只能从左边或者从上面走过来 所以dp[i][j] = dp[i-1][j] + dp[i][j-1]所以就会有 dp[j-1]*dp[i-j]个。做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。

2024-06-16 16:28:28 237

原创 代码随想录算法训练营第38天 [ 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯]

5.举例看看递推公式满不满足。做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。1.明确dp数组的含义。3.dp数组的初始化。

2024-06-14 20:31:37 376

原创 代码随想录算法训练营第37天 [ 435. 无重叠区间 763.划分字母区间 56. 合并区间 738.单调递增的数字 ]

思路:更新区间,可以合并的区间放在vector里,不能合并的push到result中。思路:数字如果是单调递减的,那前一位-1,当前位标记一下,遍历完后再把标记的都设为9。思路:用数组记录字母出现的最大下标,再定义left和right去求范围。**四、738.单调递增的数字 **做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。做题状态:看解析后做出来了。

2024-06-14 01:24:23 552

空空如也

空空如也

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

TA关注的人

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