随笔分类 - Leetcode刷题
摘要:题目链接:https://leetcode.com/problems/intersection-of-two-linked-lists/ 解题思路: 两个链表的公共节点,首先让长的链表先走length1-length2步,然后一起走
阅读全文
摘要:题目链接:https://leetcode.com/problems/same-tree/ 解题思路: 死鬼,如果p和q为空,那就相等。如果有一个为空,一个不为空,那就不等。然后两个值相等,那就递归判断下去。
阅读全文
摘要:题目链接:https://leetcode.com/problems/reverse-linked-list-ii/ 解题思路:
阅读全文
摘要:题目链接:https://leetcode.com/problems/binary-tree-inorder-traversal/ 解题思路: 二叉树的中序遍历。
阅读全文
摘要:题目链接:https://leetcode.com/problems/word-search/ 解题思路: 这个题目和剑指offer上的路径问题是一样的,今天再次复习一下写法。
阅读全文
摘要:题目链接: https://leetcode.com/problems/subsets/ 78: Given a set of distinct integers, nums, return all possible subsets (the power set). Note: The soluti
阅读全文
摘要:题目链接:https://leetcode.com/problems/subsets/ 解题思路: 这里是经典回溯法解决问题,new ArrayList<>(item)这里是相当于new了一个新对象,不是在原始的对象上操作。 深度优先搜索 我会把所有的用回溯的题全部放在一起。
阅读全文
摘要:题目链接:https://leetcode.com/problems/minimum-path-sum/ 解题思路: 没啥好说的,动态规划解决,构造状态转移方程。
阅读全文
摘要:题目链接:https://leetcode.com/problems/jump-game/ 解题思路: https://www.cnblogs.com/271934Liao/p/7053406.html
阅读全文
摘要:恢复内容开始 题目链接:https://leetcode.com/problems/permutations/ 解题思路: !!!所有的全排列,都用这种交换的思想做得了!!!不要贪多,会一个就行。记住他 然后所有的深度优先搜索都按照那个套路来,也不要贪多,背熟,他妈的。
阅读全文
摘要:题目链接:https://leetcode.com/problems/combination-sum/ 解题思路: 这是非常典型的DFS并且返回路径的题目,我们采用DFS的方法,在搜索之前我们首先进行排序,因为数组有可能是乱序的。 同时,这道题还要判断重复解。用我之前介绍的方法: if(!res.c
阅读全文
摘要:题目链接: https://leetcode.com/problems/find-first-and-last-position-of-element-in-sorted-array/ 解题思路: 有序数组都用二分法,前后找。
阅读全文
摘要:题目链接:https://leetcode.com/problems/search-in-rotated-sorted-array/ 解题思路: 和剑指offer上的题目一样,两个递增的子数组,找一个值。 二分法 如果中间的数小于最右边的数,则右半段是有序的,若中间数大于最右边数,则左半段是有序的,
阅读全文
摘要:题目链接:https://leetcode.com/problems/implement-strstr/ 解题思路: 这其实是字符串匹配的问题,找到子串在字符串中出现的第一个位置,如果不存在返回-1。 两层循环,第一层i循环是大的字符串,第二层j循环是小的字符串,如果两个匹配出现了不等的情况,那么这
阅读全文
摘要:题目链接:https://leetcode.com/problems/remove-element/ 解题思路: 目的是移除数组中的某个数,然后返回数组中还有几个其他的数 思路和上面移除重复的数字一样 注意:去重的话,i=0,j=1,j从下标1开始,而且先i++,再赋值。 这里i=0,j=0,要从第
阅读全文
摘要:题目链接:https://leetcode.com/problems/remove-duplicates-from-sorted-array/ 解题思路: 要求对一个排序数组的数字去重,而且不能申请额外的数组,返回不重复的数字。 这个思路比较简单,首先循环从第二个元素开始,如果nums[j]找到一个
阅读全文
摘要:题目链接:https://leetcode.com/problems/swap-nodes-in-pairs/ 解题思路: 这个题目比较复杂,我用本子写上去便于理解。
阅读全文
摘要:题目链接:https://leetcode.com/problems/merge-two-sorted-lists/ 解题思路: 合并两个有序的链表,非递归 先定义一个空链表,merge指向头指针。 判定l1.val 和 l2.val的大小,取小的merge.next = l1,然后merge要指向
阅读全文
摘要:题目链接:https://leetcode.com/problems/valid-parentheses/ 解题思路: 这是括号匹配的问题,就是常见栈方法。 如果出现左括号,就把左括号压栈。 如果是右括号,检查栈如果为空,证明不能匹配,如果栈不空,弹出top,与当前扫描的括号检查是否匹配。 全部字符
阅读全文
摘要:题目链接:https://leetcode.com/problems/remove-nth-node-from-end-of-list/ 解题思路: 倒数第几个节点的问题,和剑指offer上的不一样 这个问题:快指针先走n步,然后slow走的节点其实是倒数第n+1个节点,这样方便删除节点。 当让sl
阅读全文

浙公网安备 33010602011771号