![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
我与力扣斗智斗勇
文章平均质量分 56
对特别对
这个作者很懒,什么都没留下…
展开
-
lc.79 单词搜索 回溯
正文给定一个 m x n 二维字符网格 board 和一个字符串单词 word。如果 word 存在于网格中,返回 true;否则,返回 false。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。来源:leetcode_hot100_79。原创 2023-11-28 17:25:30 · 87 阅读 · 0 评论 -
lc.72编辑距离
当 word1[i] == word2[j],dp[i][j] = dp[i-1][j-1],由于这一位相同,所以这一位不需要操作,只需要将前面的改相同即可;其中,dp[i-1][j-1] 表示替换操作,dp[i-1][j] 表示删除操作,dp[i][j-1] 表示插入操作。dp[i][j] 代表 word1 到 i 位置转换成 word2 到 j 位置需要最少步数。原创 2023-11-21 17:20:33 · 18 阅读 · 0 评论 -
lc.75颜色分类
给定一个包含红色、白色和蓝色、共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。从左向右遍历,当当前下标i已经和b重合时证明整个数组中遍历过的当然是已经有序的,没遍历的右边全是2,因此整体都有序了。我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。初始时r在-1的位置,b在length的位置,都在数组外面。输入:nums = [2,0,2,1,1,0]输入:nums = [2,0,1]输出:[0,0,1,1,2,2]输出:[0,1,2]原创 2023-11-21 21:04:23 · 25 阅读 · 0 评论 -
lc78子集 回溯
由于 Java 中的集合是对象引用的集合,这意味着每次更改 path 时,添加到 list 中的所有实例也会受到影响。如果使用 startindex+1 而不是 i+1,将导致在递归调用中始终从当前的 startindex + 1 开始,而不考虑内部循环中的 i。这样会导致生成的子集出现重复,因为每次都是从 startindex + 1 开始,而不是从当前的 i + 1。输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]输出:[[],[0]]原创 2023-11-27 14:01:46 · 73 阅读 · 0 评论 -
lc.96 不同的搜索二叉树 卡特兰数
要算G(n)就需要G(0)~G(n-1)所有的值,for(int i=2;i++)存在的意义是为了G(i)模拟算出G(0)到G(n-1)所有的值。给你一个整数 n ,求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种?返回满足题意的二叉搜索树的种数。j++)从左子树只有一个节点算起,遍历左子树从小到大的过程中的所有子树组合情况。来源:leetcode_hot100_96。原创 2023-11-28 17:20:59 · 133 阅读 · 0 评论 -
lc56.合并区间
2.讨论分那么多种情况其实一个判断intervals[i][1]>=intervals[j][0]加一个赋值intervals[i][1]=max(intervals[i][1],intervals[j][1])就能总结。输入:intervals = [[1,3],[2,6],[8,10],[15,18]]解释:区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].输入:intervals = [[1,4],[4,5]]输出:[[1,6],[8,10],[15,18]]输出:[[1,5]]原创 2023-09-21 14:33:53 · 45 阅读 · 0 评论 -
力扣_跳跃游戏
有0才会不能到达吧,最小是1的话怎样都能到了(一步一步跳也行啊)。不仅有0,还得有一些条件就让他们都刚好到0才行,不然都跳过了也走得通。而且有可能会有多个0[3,2,0,0,4]这样,第一个0无伤大雅但第二个0致命一击。解释:无论怎样,总会到达下标为 3 的位置。解释:可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。数组中的每个元素代表你在该位置可以跳跃的最大长度。输入:nums = [2,3,1,1,4]输入:nums = [3,2,1,0,4]原创 2023-03-21 22:51:03 · 52 阅读 · 0 评论 -
字母异位词分组
思路:使用哈希表的思维,虽然他们顺序不一样,但同一组的他们所含字母数相同,可利用各字母数量或排序好的规定字符作为哈希表的key值,所有排序后为key的字符串的vector数组为其value。输入: strs = [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”]输出: [[“bat”],[“nat”,“tan”],[“ate”,“eat”,“tea”]]字母异位词 是由重新排列源单词的字母得到的一个新单词,所有源单词中的字母通常恰好只用一次。输出: [[“”]]原创 2023-03-19 16:17:24 · 36 阅读 · 0 评论 -
leetcode_n皇后_经典回溯
的,即全排列的每个值顺序代表在棋盘格的位置,例如[1,2,3,4]即代表[“Q…每一种解法包含一个不同的 n 皇后问题 的棋子放置方案,该方案中 ‘Q’ 和 ‘.’ 分别代表了皇后和空位。n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。解释:如上图所示,4 皇后问题存在两个不同的解法。输出:[[“Q”]]原创 2023-03-19 15:19:38 · 42 阅读 · 0 评论 -
旋转图像_多解
输入:matrix = [[5,1,9,11],[2,4,8,10],[13,3,6,7],[15,14,12,16]]输出:[[15,13,2,5],[14,3,4,1],[12,6,8,9],[16,7,10,11]]给定一个 n × n 的二维矩阵 matrix 表示一个图像。输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]输出:[[7,4,1],[8,5,2],[9,6,3]]旋转图像,这意味着你需要直接修改输入的二维矩阵。) 空间复杂度:O(N)原创 2023-03-18 19:49:31 · 31 阅读 · 0 评论 -
全排列_全排列Ⅱ
思路:利用值传递nums,每次用了什么值到下一层之前就删掉(但每次搞完都忘了还回去,没有执行撤销操作),怎么不算回溯呢✌,具体代码的注释见正解二。输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。输出:[[0,1],[1,0]]一种初始化成员变量方法。原创 2023-03-18 17:20:46 · 56 阅读 · 0 评论 -
组合总数_
给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。2 和 3 可以形成一组候选,2 + 2 + 3 = 7。输入:candidates = [2,3,6,7], target = 7。输入: candidates = [2,3,5], target = 8。输出: [[2,2,2,2],[2,3,3],[3,5]]输出:[[2,2,3],[7]]原创 2023-03-17 22:05:40 · 71 阅读 · 0 评论 -
搜索旋转排序数组
旋转下二分原创 2023-03-13 22:27:36 · 54 阅读 · 0 评论 -
下一个排列
下一个排列原创 2023-03-13 20:32:25 · 30 阅读 · 0 评论 -
括号生成_
括号生成原创 2023-03-13 17:28:01 · 34 阅读 · 0 评论 -
删除链表的倒数第N个结点
删除链表的倒数第n个结点原创 2023-03-12 22:05:34 · 39 阅读 · 0 评论 -
合并二叉树
传址传参原创 2023-03-12 21:14:57 · 162 阅读 · 0 评论 -
汉明距离_
__builtin_popcount()计算二进制表达中 1 的数量原创 2023-03-12 12:57:36 · 42 阅读 · 0 评论 -
找到所有数组中消失的数字
好怪的一个、原创 2023-03-11 22:33:30 · 111 阅读 · 0 评论 -
比特位计数
比特位计数原创 2023-03-11 17:29:40 · 25 阅读 · 0 评论 -
移动零_erase
移动0原创 2023-03-11 16:56:27 · 32 阅读 · 0 评论 -
回文链表_
回文链表原创 2023-03-10 20:14:40 · 35 阅读 · 0 评论 -
翻转二叉树
翻转二叉树原创 2023-03-10 17:22:14 · 29 阅读 · 0 评论 -
反转链表_多解
反转链表原创 2023-03-09 21:38:36 · 41 阅读 · 0 评论 -
多数元素_map
多数元素原创 2023-03-09 15:12:34 · 24 阅读 · 0 评论 -
相交链表_两种方法
相交链表原创 2023-03-09 13:21:01 · 50 阅读 · 0 评论 -
环形链表_O(n)_O(1)
环形链表_哈希表_快慢指针原创 2023-03-08 20:56:40 · 33 阅读 · 0 评论 -
只出现一次的数字
只出现一次的数字原创 2023-03-07 21:31:23 · 26 阅读 · 0 评论 -
买卖股票的最佳时期
买卖股票的最佳时机原创 2023-03-07 20:59:06 · 28 阅读 · 0 评论 -
对称二叉树
对称二叉树原创 2023-03-07 16:15:25 · 22 阅读 · 0 评论 -
二叉树的中序遍历
二叉树的中序遍历原创 2023-03-06 15:50:22 · 31 阅读 · 0 评论 -
爬楼梯_fib
爬楼梯原创 2023-03-06 10:10:36 · 25 阅读 · 0 评论 -
合并两个有序链表
合并两个有序链表原创 2023-03-05 21:57:15 · 25 阅读 · 0 评论 -
二叉树的直径
二叉树直径原创 2023-03-05 15:20:33 · 32 阅读 · 0 评论 -
有效的括号
有效括号原创 2023-03-04 15:13:32 · 20 阅读 · 0 评论 -
电话号码的字母组合
电话号码的字母组合原创 2023-03-03 21:40:07 · 127 阅读 · 0 评论 -
三数之和_
三数之和原创 2023-03-01 11:01:54 · 25 阅读 · 0 评论 -
盛最多水的容器
盛最多水的容器原创 2023-02-27 21:27:46 · 44 阅读 · 1 评论 -
最长回文子串
最长回文子串原创 2023-02-27 21:16:34 · 30 阅读 · 0 评论