- 博客(20)
- 收藏
- 关注
原创 代码随想录算法训练营第二十五天| 216.组合总和III 17.电话号码的字母组合】
【代码】代码随想录算法训练营第二十五天| 216.组合总和III 17.电话号码的字母组合】
2023-05-12 07:10:16
51
原创 代码随想录算法训练营第二十四天| 77. 组合】
这道题要注意剪纸的方法,在每次for循环的过程当中,不需要便利到n,而是到可以满足组成k个path的那一位。
2023-05-12 05:30:50
93
原创 代码随想录算法训练营第二十三天| 669. 修剪二叉搜索树 108.将有序数组转换为二叉搜索树 538.把二叉搜索树转换为累加树 】
【代码】代码随想录算法训练营第二十二天| 669. 修剪二叉搜索树 108.将有序数组转换为二叉搜索树 538.把二叉搜索树转换为累加树 】
2023-05-12 03:54:28
119
原创 代码随想录算法训练营第二十二天| 235. 二叉搜索树的最近公共祖先 701.二叉搜索树中的插入操作 450.删除二叉搜索树中的节点 】
【代码】代码随想录算法训练营第二十二天| 235. 二叉搜索树的最近公共祖先 701.二叉搜索树中的插入操作 450.删除二叉搜索树中的节点 】
2023-05-12 03:13:54
30
原创 代码随想录算法训练营第二十一天| 530.二叉搜索树的最小绝对差 501.二叉搜索树中的众数 236. 二叉树的最近公共祖先 】
方法一:中序遍历recursion写法。方法二:recursion。方法二:迭代法中序遍历。
2023-05-12 01:25:59
25
原创 代码随想录算法训练营第二十天| 654.最大二叉树 ● 617.合并二叉树 ● 700.二叉搜索树中的搜索 ● 98.验证二叉搜索树 】
方法一:dfs的方法。
2023-05-10 06:23:05
31
原创 【代码随想录算法训练营第十八天| 513.找树左下角的值, 112. 路径总和, 113.路径总和ii, 106.从中序与后序遍历序列构造二叉树, 105.从前序与中序遍历序列构造二叉树】
【代码】【代码随想录算法训练营第十八天| 513.找树左下角的值, 112. 路径总和, 113.路径总和ii, 106.从中序与后序遍历序列构造二叉树, 105.从前序与中序遍历序列构造二叉树】
2023-05-10 04:34:22
21
原创 【代码随想录算法训练营第十七天| 110. Balanced Binary Tree 、257. Binary Tree Paths、404. Sum of Left Leaves】
使用的回溯方法是一种前序遍历。回溯的解法最重要的是对path进行一个模拟,从而理解如何操作。方法一:O(nlogn)不使用全局变量的方法。
2023-05-06 07:40:09
48
原创 【代码随想录算法训练营第十六天| 104.二叉树的最大深度、559.n叉树的最大深度、111.二叉树的最小深度、222.完全二叉树的节点个数】
这道题要注意时间复杂度的推导。559.n叉树的最大深度。
2023-05-06 02:12:55
25
原创 【二叉树层序遍历 + 104. Maximum Depth of Binary Tree + 111. Minimum Depth of Binary Tree + 226.翻转二叉树 + 101.】
102.二叉树的层序遍历。
2023-05-03 07:14:57
27
原创 【代码随想录算法训练营第十一天| 20. 有效的括号 、1047. 删除字符串中的所有相邻重复项、150. 逆波兰表达式求值】
1047. 删除字符串中的所有相邻重复项。150. 逆波兰表达式求值。
2023-05-02 06:19:24
29
原创 【代码随想录算法训练营第八天| 344.反转字符串、541. 反转字符串II、剑指Offer 05.替换空格、151.翻转字符串里的单词、剑指Offer58-II.左旋转字符串】
剑指Offer58-II.左旋转字符串。剑指Offer 05.替换空格。151.翻转字符串里的单词。541. 反转字符串II。
2023-04-29 05:08:15
19
原创 【代码随想录算法训练营第六天| 242.有效的字母异位词、349. 两个数组的交集、202. 快乐数、1. 两数之和】
一开始判断set中是否有nums2中元素时,使用的是!set.add(nums2[i])的方法,导致结果出现错误。因为这样会误加入nums2中的元素,并在最终结果中加入nums2中的重复元素。通过判断map中是否有某数,可以将这题的时间复杂度从双遍历的O(n^2)下降为O(1)242.有效的字母异位词。349. 两个数组的交集。
2023-04-15 07:35:48
32
原创 代码随想录算法训练营第四天| 24. 两两交换链表中的节点、19.删除链表的倒数第N个节点 、面试题 02.07. 链表相交、142.环形链表II 】
看完思路之后写出来的代码,但是思路很灵活,不太好想。19.删除链表的倒数第N个节点。面试题 02.07. 链表相交。24. 两两交换链表中的节点。142.环形链表II。
2023-04-13 14:09:04
37
1
原创 代码随想录算法训练营第三天| 203.移除链表元素、707.设计链表、206.反转链表 】
这道题对设计链表的边界处理非常有用。203.移除链表元素。
2023-04-13 12:27:49
36
1
原创 【代码随想录算法训练营第二天| 977.有序数组的平方、209.长度最小的子数组、59.螺旋矩阵II 】
写的是自己看完题后第一思路的解答。其中的四个小while循环可以优化成for循环,同时减少x和y的维护。但是个人还是更习惯维护上下左右四个边界。在最外层循环的时候考虑了n为1的情况,认为限制条件应该是left <= right && top <= bottom。
2023-04-06 13:48:04
84
1
原创 【代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素】
只需从index为0开始重新记录数组中不等于targe的数即可。因为不等于targe的数总是小于或等于数组中遍历过的数,因此可以使用慢指针来表示可以赋值的位置,用快指针来表示遍历是检查的当前数值。很明确知道需使用二分搜索,但是判断while循环条件是用nums数组长度为1来进行判断。虽然对此题有效,但是不通用。的边界处理规则值得学习。
2023-04-05 10:03:47
227
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人