自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 代码随想录算法训练营第四十二天| 01背包问题,你该了解这些! 01背包问题,你该了解这些! 滚动数组 416. 分割等和子集

正式开始背包问题,背包问题还是挺难的,虽然大家可能看了很多背包问题模板代码,感觉挺简单,但基本理解的都不够深入。如果做过背包类问题,可以先看视频,很多内容,是自己平时没有考虑到位的。如果是直接从来没听过背包问题,可以先看文字讲解慢慢了解 这是干什么的。背包问题,力扣上没有原题,大家先了解理论,今天就安排一道具体题目。416. 分割等和子集。本题是 01背包的应用类题目。

2023-09-24 15:41:32 177

原创 代码随想录算法训练营第四十一天| 343. 整数拆分 96.不同的二叉搜索树

今天两题都挺有难度,建议大家思考一下没思路,直接看题解,第一次做,硬想很难想出来。343. 整数拆分那么在取最大值的时候,为什么还要比较dp[i]呢?因为在递推公式推导的过程中,每次计算dp[i],取最大的而已。

2023-09-18 12:54:45 208

原创 代码随想录算法训练营第三十九天| 62.不同路径 63. 不同路径 II

今天开始逐渐有 dp的感觉了,题目不多,就两个 不同路径,可以好好研究一下。本题大家掌握动态规划的方法就可以。数论方法 有点非主流,很难想到。63. 不同路径 II。

2023-09-18 10:29:55 217

原创 代码随想录算法训练营第三十八天|理论基础 ● 509. 斐波那契数 ● 70. 爬楼梯 ● 746. 使用最小花费爬楼梯

理论基础无论大家之前对动态规划学到什么程度,一定要先看 我讲的 动态规划理论基础。如果没做过动态规划的题目,看我讲的理论基础,会有感觉 是不是简单题想复杂了?其实并没有,我讲的理论基础内容,在动规章节所有题目都有运用,所以很重要!如果做过动态规划题目的录友,看我的理论基础 就会感同身受了。509. 斐波那契数很简单的动规入门题,但简单题使用来掌握方法论的,还是要有动规五部曲来分析。70. 爬楼梯本题大家先自己想一想, 之后会发现,和 斐波那契数 有点关系。

2023-09-18 09:32:06 236

原创 代码随想录算法训练营第三十七天|738.单调递增的数字 968.监控二叉树 总结

738.单调递增的数字例如:98,一旦出现strNum[i - 1] > strNum[i]的情况(非单调递增),首先想让strNum[i - 1]--,然后strNum[i]给为9,这样这个整数就是89,即小于98的最大的单调递增整数。从前向后遍历的话,遇到strNum[i - 1] > strNum[i]的情况,让strNum[i - 1]减一,但此时如果strNum[i - 1]减一了,可能又小于strNum[i - 2]。

2023-09-17 22:23:58 316

原创 代码随想录算法训练营第三十六天| 435. 无重叠区间 763.划分字母区间 56. 合并区间

即intervals[i]的左边界 <= intervals[i - 1]的右边界,则一定有重叠。(本题相邻区间也算重贴,所以是<=)今天的三道题目,都算是 重叠区间 问题,大家可以好好感受一下。所以一样的套路,先排序,让所有的相邻区间尽可能的重叠在一起,按左边界,或者右边界排序都可以,处理逻辑稍有不同。这几道题都是判断区间重叠,区别就是判断区间重叠后的逻辑,本题是判断区间重贴后要进行区间合并。还是属于那种,做过了也就会了,没做过就很难想出来。大家如果认真做题的话,话发现和我们刚刚讲过的。

2023-09-17 19:43:17 225

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

按照身高排序之后,优先按身高高的people的k来插入,后序插入节点也不会影响前面已经插入的节点,最终按照k的规则完成了队列。本题有两个维度,h和k,看到这种题目一定要想如何确定一个维度,然后再按照另一个维度重新排列。我就强调过一次,遇到两个维度权衡的时候,一定要先确定一个维度,再确定另一个维度。本题是一道 重叠区间的题目,好好做一做,因为明天三道题目,都是 重叠区间。本题有点难度,和分发糖果类似,不要两头兼顾,处理好一边再处理另一边。本题看上好像挺难,其实挺简单的,大家先尝试自己做一做。

2023-09-16 11:22:43 166

原创 代码随想录算法训练营第三十四天| 1005.K次取反后最大化的数组和 134. 加油站 135. 分发糖果

那么又是一个贪心:局部最优:只找数值最小的正整数进行反转,当前数值和可以达到最大(例如正整数数组{5, 3, 1},反转1 得到-1 比 反转5得到的-5 大多了),全局最优:整个 数组和 达到最大。那么如果将负数都转变为正数了,K依然大于0,此时的问题是一个有序正整数序列,如何转变K次正负,让 数组和 达到最大。贪心的思路,局部最优:让绝对值大的负数变为正数,当前数值达到最大,整体最优:整个数组和达到最大。本题简单一些,估计大家不用想着贪心 ,用自己直觉也会有思路。局部最优可以推出全局最优。

2023-09-16 10:14:38 59

原创 24~29总结:组合、分割、子集、全排列

第一次取1,集合变为2,3,4 ,因为k为2,我们只需要再取一个数就可以了,分别取2,3,4,得到集合[1,2] [1,3] [1,4],以此类推。求排列问题的时候,就要从0开始,因为集合是有序的,{1, 2} 和{2, 1}是两个集合,排列问题我们后续的文章就会讲到的。其实子集也是一种组合问题,因为它的集合是无序的,子集{1,2} 和 子集{2,1}是一样的。可以看出这棵树,一开始集合是 1,2,3,4, 从左向右取数,取过的数,不再重复取。的整数数组 nums,返回该数组所有可能的子集(幂集)。

2023-09-15 13:55:21 73

原创 代码随想录算法训练营第三十二天|122.买卖股票的最佳时机II 55. 跳跃游戏 45.跳跃游戏II

本题同样不容易想出来。贪心就是这样,有的时候 会感觉简单到离谱,有时候,难的不行,主要是不容易想到。本题如果没接触过,很难想到,所以不要自己憋时间太久,读题思考一会,没思路立刻看题解。本题解法很巧妙,大家可以看题思考一下,在看题解。122.买卖股票的最佳时机II。

2023-09-09 20:35:31 147

原创 代码随想录算法训练营第三十一天|理论基础 455.分发饼干 376. 摆动序列 53. 最大子序和

基本贪心的题目 有两个极端,要不就是特简单,要不就是死活想不出来。,所以大家了解贪心算法 就了解它没有规律的本质就够了。学完贪心之后再去看动态规划,就会了解贪心和动规的区别。不用花心思去研究其规律, 没有思路就立刻看题解。贪心算法其实就是没有什么规律可言。可以用dp,也可以用贪心。

2023-09-09 18:32:29 209

原创 代码随想录算法训练营第三十天| 332.重新安排行程 51. N皇后 37. 解数独

因为 一刷 也不求大家能把这么难的问题解决,所以 大家一刷的时候,就了解一下题目的要求,了解一下解题思路,不求能直接写出代码,先大概熟悉一下这些题,二刷的时候,随着对回溯算法的深入理解,再去解决如下三题。今天这三道题都非常难,那么这么难的题,为啥一天做三道?大家今天的任务,其实是 对回溯算法章节做一个总结就行。332.重新安排行程(可跳过)51. N皇后(可跳过)37. 解数独(可跳过)

2023-09-07 20:12:15 202

原创 代码随想录算法训练营第二十九天| 491.递增子序列 46.全排列 47.全排列 II

本题 就是我们讲过的 40.组合总和II 去重逻辑 和 46.全排列 的结合,可以先自己做一下,然后重点看一下 文章中 我讲的拓展内容。used[i - 1] == true 也行,used[i - 1] == false 也行。本题重点感受一下,排列问题 与 组合问题,组合总和,子集问题的区别。为什么排列问题不用 startIndex。本题和大家刚做过的 90.子集II 非常像,但又很不一样,很容易掉坑里。

2023-09-07 18:47:35 127

原创 代码随想录算法训练营第二十八天| 93.复原IP地址 78.子集 90.子集II

大家之前做了 40.组合总和II 和 78.子集 ,本题就是这两道题目的结合,建议自己独立做一做,本题涉及的知识,之前都讲过,没有新内容。子集问题,就是收集树形结构中,每一个节点的结果。整体代码其实和 回溯模板都是差不多的。本来是很有难度的,不过 大家做完 分割回文串 之后,本题就容易很多了。如果把 子集问题、组合问题、分割问题都抽象为一棵树的话,

2023-09-05 16:17:15 114

原创 代码随想录算法训练营第二十七天| 131.分割回文串

本题较难,大家先看视频来理解 分割问题,明天还会有一道分割问题,先打打基础。

2023-09-05 09:55:13 412

原创 英语学习日报8

五。

2023-09-01 23:42:52 32

原创 代码随想录算法训练营第二十五天|39. 组合总和 40. 组合总和 II 216.组合总和III 17.电话号码的字母组合

和另外两种组合一起看:分别是选取的数组有无重复,以及能否重复使用,在于start,去重读的区别。本题大家刚开始做会有点难度,先自己思考20min,没思路就直接看题解。如果把 组合问题理解了,本题就容易一些了。17.电话号码的字母组合。216.组合总和III。

2023-09-01 22:40:03 36

原创 代码随想录算法训练营第二十四天|理论基础 77. 组合

其实在讲解二叉树的时候,就给大家介绍过回溯,这次正式开启回溯算法,大家可以先看视频,对回溯算法有一个整体的了解。对着 在 回溯算法理论基础 给出的 代码模板,来做本题组合问题,大家就会发现 写回溯算法套路。在回溯算法解决实际问题的过程中,大家会有各种疑问,先看视频介绍,基本可以解决大家的疑惑。本题关于剪枝操作是大家要理解的重点,因为后面很多回溯算法解决的题目,都是这个剪枝套路。

2023-09-01 18:59:05 340

原创 代码随想录算法训练营第二十三天|669. 修剪二叉搜索树 108.将有序数组转换为二叉搜索树 538.把二叉搜索树转换为累加树 ● 总结篇

本题也不难,在 求二叉搜索树的最小绝对差 和 众数 那两道题目 都讲过了 双指针法,思路是一样的。这道题目比较难,比 添加增加和删除节点难的多,建议先看视频理解。递归: 左闭右开 [left,right)好了,二叉树大家就这样刷完了,做一个总结吧。108.将有序数组转换为二叉搜索树。538.把二叉搜索树转换为累加树。本题就简单一些,可以尝试先自己做做。669. 修剪二叉搜索树。

2023-09-01 15:53:05 47

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

本题比想象中的简单,大家可以先自己想一想应该怎么做,然后看视频讲解,就发现 本题为什么比较简单了。相对于 二叉树的最近公共祖先 本题就简单一些了,因为 可以利用二叉搜索树的特性。相对于 插入操作,本题就有难度了,涉及到改树的结构。235. 二叉搜索树的最近公共祖先。701.二叉搜索树中的插入操作。450.删除二叉搜索树中的节点。

2023-09-01 14:42:47 29

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

同时要学会在递归遍历的过程中如何记录前后两个指针,这也是一个小技巧,学会了还是很受用的。和 530差不多双指针思路,不过 这里涉及到一个很巧妙的代码技巧。需要领悟一下二叉树遍历上双指针操作,优先掌握递归。,我们只需要在中序遍历的时候和前一个节点比较,保存。本题其实是比较难的,可以先看我的视频讲解。可以先自己做做看,然后看我的视频讲解。530.二叉搜索树的最小绝对差。236. 二叉树的最近公共祖先。501.二叉搜索树中的众数。

2023-09-01 13:35:08 28

原创 英语学习日报6

无。

2023-09-01 11:37:53 28

原创 英语听力学习第一周日5

高频词2一部分读+听写。

2023-08-30 22:46:16 37

原创 代码随想录算法训练营day1~18总结

day1:day2:day3:day4:day6:day7: day8:day9:栈队day10:day11:day13:二叉树。

2023-08-30 18:46:43 152

原创 英语听力学习第一周日报4

高频词1复习高频词2一部分听写。

2023-08-29 11:55:09 35

原创 代码随想录算法训练营第二十天| 654.最大二叉树 617.合并二叉树 700.二叉搜索树中的搜索 98.验证二叉搜索树

又是构造二叉树,昨天大家刚刚做完 中序后序确定二叉树,今天做这个 应该会容易一些, 先看视频,好好体会一下 为什么构造二叉树都是 前序遍历。这次是一起操作两个二叉树了, 估计大家也没一起操作过两个二叉树,也不知道该如何一起操作,可以看视频先理解一下。但本题是有陷阱的,可以自己先做一做,然后在看题解,看看自己是不是掉陷阱里了。递归和迭代 都可以掌握以下,因为本题比较简单, 了解一下 二叉搜索树的特性。遇到 搜索树,一定想着中序遍历,这样才能利用上特性。700.二叉搜索树中的搜索。写了一版就是掉进陷阱的。

2023-08-29 00:32:53 28

原创 英语听力学习第一周日报3

高频词1复习高频词2掌握刷题前看。

2023-08-27 15:48:09 45

原创 英语听力学习第一周周报——1

2+3边学边读听力材料录音让哥哥纠正(一周)高频词视听一致+运用。中频词视听一致+运用。

2023-08-26 23:28:12 79

原创 英语听力学习第一周日报2

高频词1听写高频词1复习高频词2听写。

2023-08-26 23:16:09 27

原创 代码随想录算法训练营第十八天 | 513.找树左下角的值112. 路径总和 113.路径总和ii 106.从中序与后序遍历序列构造二叉树 105.从前序与中序遍历序列构造二叉树

106.从中序与后序遍历序列构造二叉树,105.从前序与中序遍历序列构造二叉树 一起做,思路一样的。本题 又一次设计要回溯的过程,而且回溯的过程隐藏的还挺深,建议先看视频来理解。112. 路径总和,和 113. 路径总和ii 一起做了。本题递归偏难,反而迭代简单属于模板题, 两种方法掌握一下。本题算是比较难的二叉树题目了,大家先看视频来理解。从中序与后序遍历序列构造二叉树。

2023-08-26 21:14:06 68

原创 面试题——5

5. 最长回文子串

2023-08-25 14:10:51 25

原创 代码随想录算法训练营第十七天 | 110.平衡二叉树 257. 二叉树的所有路径 404.左叶子之和

这是大家第一次接触到回溯的过程, 我在视频里重点讲解了 本题为什么要有回溯,已经。其实本题有点文字游戏,搞清楚什么是左叶子,剩下的就是二叉树的基本操作。再一次涉及到,什么是高度,什么是深度,可以巩固一下。257. 二叉树的所有路径 (优先掌握递归)如果对回溯 似懂非懂,没关系, 可以先有个印象。110.平衡二叉树 (优先掌握递归)404.左叶子之和 (优先掌握递归)

2023-08-25 13:28:09 26

原创 面试题——4

(还不会)

2023-08-25 12:40:42 24

原创 英语听力学习第一周日报1

语言现象:100。

2023-08-24 12:56:26 40

原创 面试题——3

141. 环形链表

2023-08-23 23:40:11 18

原创 代码随想录算法训练营第十六天 | 104.二叉树的最大深度 559.n叉树的最大深度 111.二叉树的最小深度 222.完全二叉树的节点个数

大家 要先看视频讲解,就知道以上我说的内容了,很多录友刷过这道题,但理解的还不够。什么是深度,什么是高度,如何求深度,如何求高度,这里有关系到二叉树的遍历方式。先看视频讲解,和最大深度 看似差不多,其实 差距还挺大,有坑。需要了解,普通二叉树 怎么求,完全二叉树又怎么求。222.完全二叉树的节点个数(优先掌握递归)104.二叉树的最大深度 (优先掌握递归)111.二叉树的最小深度 (优先掌握递归)

2023-08-23 22:15:14 127

原创 代码随想录算法训练营第十五天 | 层序遍历 226.翻转二叉树 101.对称二叉树 2

这道题目 一些做过的同学 理解的也不够深入,建议大家先看我的视频讲解,无论做过没做过,都会有很大收获。看完本篇可以一口气刷十道题,试一试, 层序遍历并不难,大家可以很快刷了十道题。101. 对称二叉树 (优先掌握递归)226.翻转二叉树 (优先掌握递归)先看视频讲解,会更容易一些。

2023-08-23 21:35:32 109

原创 面试题——2

15. 三数之和1. 两数之和21. 合并两个有序链表面试题 08.06. 汉诺塔问题104. 二叉树的最大深度88. 合并两个有序数组912. 排序数组53. 最大子数组和

2023-08-23 10:52:49 28

原创 代码随想录算法训练营第十四天 | 理论基础 递归遍历 迭代遍历 统一迭代

需要了解 二叉树的种类,存储方式,遍历方式 以及二叉树的定义。统一迭代 (基础不好的录友,迭代法可以放过)这是统一迭代法的写法, 如果学有余力,可以掌握一下。二叉树的三种递归遍历掌握其规律后,其实很简单。迭代遍历 (基础不好的录友,迭代法可以放过)递归遍历 (必须掌握)

2023-08-22 15:40:42 98 1

原创 面试题——1

3. 无重复字符的最长子串206. 反转链表215. 数组中的第K个最大元素

2023-08-22 12:05:39 48 1

空空如也

空空如也

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

TA关注的人

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