
代码随想录算法训练营记录
文章平均质量分 76
算法学习和记录打卡
hellogarbage
啥也不是
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
代码随想录算法训练营第二十天|LeetCode235. 二叉搜索树的最近公共祖先、LeetCode701.二叉搜索树中的插入操作、LeetCode450.删除二叉搜索树中的节点
LeetCode235. 二叉搜索树的最近公共祖先文章讲解:代码随想录视频讲解:LeetCode235. 二叉搜索树的最近公共祖先_哔哩哔哩_bilibiliLeetCode701.二叉搜索树中的插入操作文章讲解:代码随想录视频讲解:LeetCode:701.二叉搜索树中的插入操作_哔哩哔哩_bilibiliLeetCode450.删除二叉搜索树中的节点文章讲解:代码随想录视频讲解:LeetCode:450.删除二叉搜索树中的节点_哔哩哔哩_bilibili。原创 2025-06-17 17:41:33 · 114 阅读 · 0 评论 -
代码随想录算法训练营第十八天|LeetCode530.二叉搜索树的最小绝对差、LeetCode501.二叉搜索树中的众数、LeetCode236. 二叉树的最近公共祖先
LeetCode530.二叉搜索树的最小绝对差文章讲解:代码随想录视频讲解:LeetCode:530.二叉搜索树的最小绝对差_哔哩哔哩_bilibiliLeetCode501.二叉搜索树中的众数文章讲解:代码随想录视频讲解:LeetCode:501.二叉搜索树中的众数_哔哩哔哩_bilibiliLeetCode236. 二叉树的最近公共祖先文章讲解:代码随想录视频讲解:LeetCode:236. 二叉树的最近公共祖先_哔哩哔哩_bilibili。原创 2025-06-14 23:06:22 · 174 阅读 · 0 评论 -
代码随想录算法训练营第十七天|LeetCode654.最大二叉树、LeetCode617.合并二叉树、LeetCode700.二叉搜索树中的搜索、LeetCode98.验证二叉搜索树
LeetCode654.最大二叉树文章讲解:LeetCode654.最大二叉树视频讲解:LeetCode:654.最大二叉树_哔哩哔哩_bilibiliLeetCode617.合并二叉树文章讲解:LeetCode617.合并二叉树视频讲解:LeetCode:617.合并二叉树_哔哩哔哩_bilibiliLeetCode700.二叉搜索树中的搜索文章讲解:LeetCode700.二叉搜索树中的搜索视频讲解:LeetCode:700.二叉搜索树中的搜索_哔哩哔哩_bilibili。原创 2025-06-13 22:30:16 · 282 阅读 · 0 评论 -
代码随想录算法训练营第十六天|LeetCode513. 找树左下角的值、LeetCode112 113. 路径总和 路径总和Ⅱ、LeetCode106. 从中序与后序遍历序列构造二叉树
LeetCode513. 找树左下角的值视频讲解:LeetCode:513.找二叉树左下角的值_哔哩哔哩_bilibili文章讲解:代码随想录LeetCode112 113. 路径总和 路径总和Ⅱ视频讲解:LeetCode:112. 路径总和_哔哩哔哩_bilibili文章讲解:代码随想录LeetCode106. 从中序与后序遍历序列构造二叉树视频讲解:LeetCode:106.从中序与后序遍历序列构造二叉树_哔哩哔哩_bilibili文章讲解:代码随想录。原创 2025-06-12 12:05:45 · 519 阅读 · 0 评论 -
代码随想录算法训练营第十五天|LeetCode110.平衡二叉树、LeetCode257. 二叉树的所有路径、LeetCode404.左叶子之和、LeetCode222.完全二叉树的节点个数
LeetCode110.平衡二叉树LeetCode257. 二叉树的所有路径LeetCode404.左叶子之和LeetCode222.完全二叉树的节点个数。原创 2025-06-11 23:16:13 · 216 阅读 · 0 评论 -
代码随想录算法训练营第十四天|LeetCode226.翻转二叉树、LeetCode101. 对称二叉树、LeetCode104.二叉树的最大深度、LeetCode111.二叉树的最小深度
LeetCode226.翻转二叉树LeetCode101. 对称二叉树LeetCode104.二叉树的最大深度LeetCode111.二叉树的最小深度。原创 2025-06-10 23:27:17 · 689 阅读 · 0 评论 -
代码随想录算法训练营第十一天|LeetCode150. 逆波兰表达式求值、LeetCode239. 滑动窗口最大值、LeetCode347.前 K 个高频元素
LeetCode150. 逆波兰表达式求值文章链接:代码随想录视频讲解LeetCode:150. 逆波兰表达式求值LeetCode239. 滑动窗口最大值文章链接:代码随想录视频讲解:LeetCode:239. 滑动窗口最大值LeetCode347.前 K 个高频元素文章链接:代码随想录视频讲解:LeetCode:347.前 K 个高频元素。原创 2025-06-07 20:22:05 · 256 阅读 · 0 评论 -
代码随想录算法训练营第十天|LeetCode232.用栈实现队列、LeetCode225.用队列实现栈、LeetCode20.有效的括号、LeetCode1047.删除字符串中的所有相邻重复项
LeetCode232.用栈实现队列文章链接:代码随想录视频讲解:LeetCode:232.用栈实现队列LeetCode225.用队列实现栈文章链接:代码随想录视频讲解:LeetCode:225. 用队列实现栈LeetCode20.有效的括号文章链接:代码随想录视频讲解:LeetCode:20. 有效的括号LeetCode1047.删除字符串中的所有相邻重复项文章链接:代码随想录视频讲解:LeetCode:1047. 删除字符串中的所有相邻重复项。原创 2025-06-06 17:57:14 · 415 阅读 · 0 评论 -
代码随想录算法训练营第九天|LeetCode151.翻转字符串中的单词、KamaCoder55. 右旋字符串、LeetCode28.找出字符串中第一个匹配项的下标、LeetCode459.重复的子串
LeetCode151.翻转字符串中的单词文章链接:代码随想录视频链接:LeetCode:151.翻转字符串里的单词KamaCoder55. 右旋字符串文章链接:代码随想录LeetCode28.找出字符串中第一个匹配项的下标文章链接:代码随想录算法视频链接:KMP算法(理论篇)算法视频链接:求next数组(代码篇)LeetCode459.重复的子字符串文章链接:代码随想录视频链接:LeetCode:459.重复的子字符串最长前后缀匹配字符串就是一个字符串s的头部一部分子串和尾部一部分子串完全相同且。原创 2025-06-06 13:58:34 · 1151 阅读 · 0 评论 -
代码随想录算法训练营第八天|LeetCode344.反转字符串、LeetCode541.反转字符串Ⅱ、KamaCoder54.替换数字
LeetCode344.反转字符串视频链接:LeetCode:344.反转字符串文章链接:代码随想录LeetCode541.反转字符串Ⅱ视频链接:LeetCode:541. 反转字符串II文章链接:代码随想录KamaCoder54.替换数字文章链接:代码随想录。原创 2025-06-04 17:24:49 · 283 阅读 · 0 评论 -
代码随想录算法训练营第七天|LeetCode454.四数相加II、LeetCode383.赎金信、LeetCode15.三数之和、LeetCode18.四数之和
LeetCode454.四数相加II文章讲解视频讲解LeetCode383.赎金信文章讲解LeetCode15.三数之和文章讲解视频讲解LeetCode18.四数之和文章讲解视频讲解。原创 2025-06-03 19:55:28 · 1095 阅读 · 0 评论 -
代码随想录算法训练营第六天|LeetCode242.有效的字母异位词、LeetCode349.两个数组的交集、LeetCode202.快乐数、LeetCode1.两数之和
统计完第一个单词的所有字母后,再统计第二个单词与第一个单词的所有字母的数量差值,如果所有字母的数量差值都为0,则两个单词的字母及数量完全一致,返回true,否则返回false。由于unordered_set底层实现是哈希表,所以查找和增删的效率都是O(1),我们可以不使用数组而改用unordered_set来记录出现过的数字,不过要注意的是相比与数组,使用unordered_set的效率会更低,因为无论是查找还是增删都会比数组额外多出一个哈希值的计算。原创 2025-06-02 12:57:24 · 474 阅读 · 0 评论 -
代码随想录算法训练营第四天|LeetCode24.两两交换链表中的结点、LeetCode19.删除链表的倒数第N个结点、LeetCode面试题02.07. 链表相交、LeetCode142.环形链表Ⅱ
设置快慢两个指针,如果要找倒数第n个结点,首先让快指针从newHead指针处先向后移动n个结点,然后slow和fast同时移动,直到fast的下一个结点为NULL时,此时slow的下一个结点就是我们要找的倒数第n个结点。如下图,假设链表有环,链表的直线部分长度为x,从环的入口处到fast和slow指针相交处长度为y,从相交处回到环的入口处的长度为z。,所以此时,我们只要再让一个新的指针从head出发,当前指针从相交点出发,不断往前移动一格,最终一定会再环的入口处相交!通过最后的关系式,我们可以得知,原创 2025-05-31 16:13:15 · 406 阅读 · 0 评论 -
代码随想录算法训练营第三天|LeetCode203.移除链表元素、LeetCode707.设计链表、LeetCode206.反转链表
无论是单双链表都需要设置一个新的结点类MyListNode,然后根据单双链表的结构不同,添加和删除有所不同,单链表的增删比较固定,只能添加或者删除某个结点后面的结点,所以确定添加或者删除位置的时候,我们要找到该位置的前一个结点,然后再进行添加或者删除。原地反转需要设置三个指针,如下图,pCur指向的结点是当前要进行反转的结点,pPre指向的结点是前一个反转的结点,temp是用来记录下一次pCur的位置。首先要考虑要删除结点的位置不同会导致相应的代码不同,假如我们要删除值为2的结点,要。原创 2025-05-30 18:43:28 · 289 阅读 · 0 评论 -
代码随想录算法训练营第二天|LeetCode209. 长度最小的子数组、LeetCode59.螺旋矩阵Ⅱ
LeetCode209. 长度最小的子数组、LeetCode59.螺旋矩阵Ⅱ原创 2025-05-29 10:46:57 · 208 阅读 · 0 评论 -
代码随想录算法训练营第一天|LeetCode704.二分查找、LeetCode27.移除元素、LeetCode977.有序数组的平方
LeetCode704.二分查找、LeetCode27.移除元素、LeetCode977.有序数组的平方原创 2025-05-28 11:56:36 · 376 阅读 · 0 评论