- 博客(57)
- 收藏
- 关注
原创 算法二刷day4
19.删除链表的倒数第N个节点。面试题 02.07. 链表相交。24. 两两交换链表中的节点。24. 两两交换链表中的节点。142.环形链表II。
2024-03-10 18:24:58 500
原创 代码随想录算法训练营总结
在参加训练营之前,其实我自己花了一周时间学算法,跟着代码随想录自己学习,发现效率很低,一天学完两道题就感觉到量了、学不动了;而且总是三天打鱼两天晒网。所以最初是抱着提高效率的目的参加训练营,最后坚持下来也算圆满完成任务了。一刷之后觉得很多算法还有数据结构其实没有悟透,很多题目就是第一遍会做了,到了第二遍应该还是想不出来,这也是我后面二刷需要进步的地方。
2024-02-20 11:29:39 144
原创 代码随想录算法训练营第58天|739. 每日温度 496.下一个更大元素 I
单调栈适用于解决:左边或右边第一个比当前元素大/小的元素。496.下一个更大元素 I。
2024-02-12 21:07:09 229
原创 代码随想录算法训练营第56天|583. 两个字符串的删除操作 72. 编辑距离 编辑距离总结
583. 两个字符串的删除操作。583. 两个字符串的删除操作。
2024-02-07 21:29:06 221
原创 代码随想录算法训练营第53天|1143.最长公共子序列 1035.不相交的线 53. 最大子序和
1143.最长公共子序列。1143.最长公共子序列。1035.不相交的线。
2024-02-05 11:00:20 178
原创 代码随想录算法训练营第52天|300.最长递增子序列 674. 最长连续递增序列 718. 最长重复子数组
674. 最长连续递增序列。718. 最长重复子数组。300.最长递增子序列。300.最长递增子序列。
2024-02-03 12:28:33 213
原创 代码随想录算法训练营第51天|309.最佳买卖股票时机含冷冻期 714.买卖股票的最佳时机含手续费
714.买卖股票的最佳时机含手续费。309.最佳买卖股票时机含冷冻期。309.最佳买卖股票时机含冷冻期。
2024-02-02 10:15:54 160
原创 代码随想录算法训练营第50天|123.买卖股票的最佳时机III 188.买卖股票的最佳时机IV
123.买卖股票的最佳时机III。123.买卖股票的最佳时机III。188.买卖股票的最佳时机IV。
2024-02-01 11:47:32 173
原创 代码随想录算法训练营第49天|121. 买卖股票的最佳时机 122.买卖股票的最佳时机II
这道题一上手就有贪心的想法,而且代码也很简单,这里直接学习动规的代码。122.买卖股票的最佳时机II。121. 买卖股票的最佳时机。121. 买卖股票的最佳时机。
2024-02-01 11:27:22 453
原创 代码随想录算法训练营第44天|518. 零钱兑换 II 377. 组合总和 Ⅳ
518. 零钱兑换 II。518. 零钱兑换 II。377. 组合总和 Ⅳ。
2024-01-25 12:39:21 472
原创 代码随想录算法训练营第43天|1049. 最后一块石头的重量 II 494. 目标和 474.一和零
1049. 最后一块石头的重量 II。1049. 最后一块石头的重量 II。
2024-01-24 18:29:38 475
原创 代码随想录算法训练营第42天|01背包(二维+一维)
如果理解不了递推公式怎么来的,可以去看定义,再想想dp[i-1]到底是什么意思,就可以理解递推公式了。我考虑了很久的二维转变成一维时的覆盖问题,后来发现从后向前遍历就可以避免重复添加。在卡码网辛辛苦苦一顿敲代码,因为没登陆出去重进,代码全没了5555555555。回顾一下回溯的二叉树的图,就可以理解为什么暴力可以用回溯了。
2024-01-23 19:30:30 430
原创 代码随想录算法训练营第41天|343. 整数拆分 96.不同的二叉搜索树
递推关系要考虑好,而且节点的数字不同不影响因为节点数量相同而导致的结果的相同,这一点考虑到其实就非常简单了。96.不同的二叉搜索树。
2024-01-22 10:08:57 463
原创 代码随想录算法训练营第39天|62.不同路径 63. 不同路径 II
这题刚上手就一直瞪眼看,怎么看怎么想不出来,就觉得递推公式最后做出来的会有重复情况,但其实真正下笔开始写五步曲就发现没那么困难。初始化要初始化一行一列。63. 不同路径 II。
2024-01-20 16:32:33 384
原创 代码随想录算法训练营第38天|动态规划理论基础 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯
动态规划,简称DP,主要用来。746. 使用最小花费爬楼梯。509. 斐波那契数。
2024-01-19 13:10:10 427
原创 代码随想录算法训练营第37天|738.单调递增的数字 968.监控二叉树
学习stoi()、to_string()函数的运用。968.监控二叉树(跳过)738.单调递增的数字。738.单调递增的数字。
2024-01-18 12:16:38 463
原创 代码随想录算法训练营第36天|435. 无重叠区间 763.划分字母区间 56. 合并区间
和上一道弓箭问题是一样的。435. 无重叠区间。435. 无重叠区间。763.划分字母区间。
2024-01-17 18:38:38 388
原创 代码随想录算法训练营第35天|860.柠檬水找零 406.根据身高重建队列 452. 用最少数量的箭引爆气球
其实我自己写的这段代码有问题:一开始想用数组直接存放钱的数目,但其实这个20块钱不是索引为2,在数组中的位置是3,但20不涉及到找零问题,这里不影响。452. 用最少数量的箭引爆气球。406.根据身高重建队列。按照h降序,k升序排序。
2024-01-16 15:05:05 448
原创 代码随想录算法训练营第34天|1005.K次取反后最大化的数组和 134. 加油站 135. 分发糖果
本题应该也可以直接从小到大排序,到nums[i] >= 0停下,然后继续就是一样的逻辑。sort()排序规则可以自己定义,这里的代码就是绝对值降序排列。两边都要比较,那就分开看,一次遍历看一边。1005.K次取反后最大化的数组和。1005.K次取反后最大化的数组和。
2024-01-15 16:34:38 325
原创 代码随想录算法训练营第32天|122.买卖股票的最佳时机II 55. 跳跃游戏 45.跳跃游戏II
122.买卖股票的最佳时机II。122.买卖股票的最佳时机II。
2024-01-13 22:01:23 497
原创 代码随想录算法训练营第31天|理论基础 455.分发饼干 376. 摆动序列 53. 最大子序和
prediff默认为0,这样相当于为首元素增加一个平坡,处理平坡默认删掉左边所有平坡,保留最后一个元素,这样首元素也可以处理。注意:为什么要先遍历孩子:如果先遍历饼干,那么饼干在一直做i--,而孩子一直指向胃口最大的孩子,result=0。2种思路:利用大饼干满足小孩,以及充分利用小饼干满足小孩。贪心算法:局部最优->全局最优。
2024-01-12 14:41:52 396
原创 代码随想录算法训练营第29天|491.递增子序列 46.全排列 47.全排列 II
终止条件可以不写的原因:startIndex最终会走到size之外自动终止。不能排序:排序会改变元素顺序,增加结果。for中if条件两种情况需要仔细思考。
2024-01-10 11:28:49 314
原创 代码随想录算法训练营第28天|93.复原IP地址 78.子集 90.子集II
注意.insert()以及.erase()函数的运用来添加删除逗点。for循环中递归参数要i + 2,跳过逗点。
2024-01-09 15:36:11 437
原创 代码随想录算法训练营第27天|39. 组合总和 40.组合总和II 131.分割回文串
used数组的作用:区分树层和树枝去重,在树枝内used是true,不会因为与上一个相同就排除掉结果;树层内used是false,会因为与上一个相同直接continue。不用在for中backtracking部分传入i + 1了,这样才能重复使用元素。这里不使用used数组也是可以的,只需判断i是否大于startIndex。不使用sum也可以,通过target==0来判断。
2024-01-08 16:08:08 478
原创 代码随想录算法训练营第25天|216.组合总和III 17.电话号码的字母组合
今天的题目还是非常简单的。17.电话号码的字母组合。216.组合总和III。216.组合总和III。
2024-01-07 10:06:39 327
原创 代码随想录算法训练营第24天|理论基础 77. 组合
解决这类问题通常把回溯过程抽象为n叉树结构:宽度用for遍历,深度用递归。回溯法解决的问题:组合问题;回溯通常在递归的下面,他们是相辅相成的。
2024-01-06 09:49:03 492
原创 代码随想录算法训练营第23天|669. 修剪二叉搜索树 108.将有序数组转换为二叉搜索树 538.把二叉搜索树转换为累加树
108.将有序数组转换为二叉搜索树。538.把二叉搜索树转换为累加树。669. 修剪二叉搜索树。669. 修剪二叉搜索树。
2024-01-05 10:30:19 388 1
原创 代码随想录算法训练营第22天|235. 二叉搜索树的最近公共祖先 701.二叉搜索树中的插入操作 450.删除二叉搜索树中的节点
【代码】代码随想录算法训练营第22天|235. 二叉搜索树的最近公共祖先 701.二叉搜索树中的插入操作 450.删除二叉搜索树中的节点。
2024-01-04 10:06:44 380 1
原创 代码随想录算法训练营第21天|530.二叉搜索树的最小绝对差 501.二叉搜索树中的众数 236. 二叉树的最近公共祖先
方法一:利用中序遍历可以将二叉搜索树转变为一个有序数组,遍历这个数组可以将最小绝对差找到。方法二:在中序遍历过程中直接利用双指针算出最小绝对差。530.二叉搜索树的最小绝对差。530.二叉搜索树的最小绝对差。236. 二叉树的最近公共祖先。从下到上处理一定要用后序遍历。501.二叉搜索树中的众数。
2024-01-03 15:39:53 550 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人