- 博客(7)
- 收藏
- 关注
原创 Leetcode Path Sum II
题目名称:113Path Sum II难度:Medium知识点:Recursion解题思路:这道题还是利用二叉树组的特性进行recursion求解。首先判断根节点是否为null,再判断左结点和右结点,他们两个的目标值都是原始值减去根节点的值,对于这两个子结点的子节点,recursion中传入的已经减掉根节点的目标值再减去他们各自作为根节点的值就可以了。还有一个注意的点是,我们可以一直root.left root.right定位到他们的子节点,但是此题是要返回正确的path的node的值组成.
2021-10-18 00:01:16
124
原创 Leetcode Path Sum I
题目名称:112 Path Sum难度:Easy知识点:Recursion解题思路:这道题比较简单,找从根节点到叶子结点的path, 路经的节点和为目标值,这种题无非两个思路,DFS 或者 Recursion。本题是根到叶子的和,因此Recursion就可以了。首先检查根节点是否为null,如果是null, 那么返回false,第二,是否已经是叶子结点,如果是,那么检查当前节点的值是否合目标值相等,如果相等返回true。我们会通过recursion来判断每个节点,对于非叶子结点,他的左右节点
2021-10-15 23:52:16
117
原创 20. Valid Parentheses(括号)
Leecode 刷题第一轮 27th Sep 20.Valid Parentheses题目名称:20.Valid Parentheses难度:Easy知识点:stack解题思路:这道题的关键点在于如何应对各种模式下的配对,例如(){}[], {[()]},(){[]}等,如果以一个找中间点然后去匹配左右两边的符号的思路的话,有点难去定位这些不确定的中间点,可以尝试在遇到左边符号的情况下一直往右边走,遇到右边之后就以该右边符号和他前面的左边符号为中心点向两边配对,如果最左边或者上次..
2021-09-27 22:40:18
115
原创 Leetcode 27. Remove Element
题目名称:27.Remove Element难度:Easy知识点:双指针解题思路:这道题其实比较简单,但是容易陷入双指针的固定思维,以两个指针为主,总在合校两个指针,但是其实这道题,我们只需考虑前列的指针即可,只要她合目标数字不一样,那我们就把它复制给后面的指针,采用循环持续检验前列指针,如果其与目标数字一样,就持续下去再去找就好了,后面的每一个数字都要复制给后列指针,后列指针只是像一个锚,负责把持进度,不断接收前列指针检验过的数字,最后返回后列指针即可。Java dai...
2021-06-12 23:24:18
1123
3
原创 Leetcode 19. Remove Nth Node From End of List
题目名称:19.Remove Nth Node From End of List难度:Medium知识点:linked list解题思路:要去除从后往前数的第N个数字,但是链表是单向的,只能从前往后数,不能从后往前数,这样的话我们考虑拿一段绳子,从前往后数好长度,一端在链表的第一个的元素上,另一端挪动目标数字+1步,多数一步的目的是在下一步将绳子另一端挪到尾端最后一个元素时,起端刚好在要去除的元素的前一个元素上,这样做是由于链表只能通过前一个元素直接指向下下一个元素的方式去除中间元素。.
2021-06-12 22:13:51
179
原创 Leetcode 16. Closest 3 Sum
题目名称:16. Closest 3 Sum难度:Medium知识点:双指针解题思路:这道题特点是只需返回最靠近的三个数字的和,因此我们可以对数组进行排序,排序之后遍历整个数组,其中的每个数字作为第一个数字,求其与目标和的差值,在剩余的数字中寻找最靠近的差值,因为数组已经排序,因此可以用双指针,计算每一组三个数字与目标值的距离,如果绝对值比较小,我们就存起来这个值。另外,如果第一个数字的三倍已经比目标和大或者相等了,那我们只要看当前数字和其后面两个数字就好,不需要双指针去寻找了,再有就是我们在调
2021-06-02 23:43:23
140
3
原创 leetcode 5. Longest Palindromic Substring 最长回文 动态规划解答
题目名称:leetcode 5. Longest Palindromic Substring难度:Medium知识点:动态规划解题思路:这道题最简单直观的想法是遍历所有的char,并且以当前char为中心向两边散开,像是打开一个小窗口,不断打开直到左右边际的两个char不再相等或者抵达string边界,即回文不再形成,这个方式是可行的,但是这个方式的问题是,遍历每个char时,都是一个新的中点,前一个遍历点的判断结果不能被reuse。第二个想法是还是遍历所有的char, 但是不是作为中心,而
2021-05-26 00:45:18
135
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人