回溯算法
文章平均质量分 84
回溯
gyjllll
这个作者很懒,什么都没留下…
展开
-
51. N 皇后
按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。研究的是如何将n个皇后放置在n×n的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数n,返回所有不同的的解决方案。每一种解法包含一个不同的的棋子放置方案,该方案中'Q'和'.'分别代表了皇后和空位。n = 4如上图所示,4 皇后问题存在两个不同的解法。原创 2024-08-02 17:38:12 · 267 阅读 · 0 评论 -
回溯法总结
如何理解回溯法的搜索过程?什么时候用startIndex,什么时候不用?如何去重?如何理解“树枝去重”与“树层去重”?去重的几种方法?如何理解二维递归?这几个问题是回溯算法的精髓所在。原创 2024-01-23 18:18:39 · 903 阅读 · 0 评论 -
47. 全排列 II
给定一个可包含重复数字的序列nums返回所有不重复的全排列。原创 2024-01-22 19:11:12 · 376 阅读 · 0 评论 -
46. 全排列
每层都是从0开始搜索而不是startIndex需要used数组记录path里都放了哪些元素了。原创 2024-01-22 18:35:49 · 366 阅读 · 0 评论 -
491. 非递减子序列
给你一个整数数组 ,找出并返回所有该数组中不同的递增子序列,递增子序列中 至少有两个元素 。你可以按 任意顺序 返回答案。数组中可能含有重复元素,如出现两个整数相等,也可以视作递增序列的一种特殊情况。示例 1:输入:nums = [4,6,7,7]输出:[[4,6],[4,6,7],[4,6,7,7],[4,7],[4,7,7],[6,7],[6,7,7],[7,7]]示例 2:输入:nums = [4,4,3,2,1]输出:[[4,4]]提示:本题求自增子序列,是不能对原数组进行排序原创 2024-01-22 18:03:23 · 795 阅读 · 0 评论 -
90. 子集 II
给你一个整数数组nums,其中可能包含重复元素,请你返回该数组所有可能的子集(幂集)。解集包含重复的子集。返回的解集中,子集可以按排列。原创 2024-01-22 16:54:05 · 324 阅读 · 0 评论 -
78. 子集
给你一个整数数组nums,数组中的元素。返回该数组所有可能的子集(幂集)。解集包含重复的子集。你可以按返回解集。原创 2024-01-22 14:06:38 · 846 阅读 · 0 评论 -
93. 复原 IP 地址
有效 IP 地址 正好由四个整数(每个整数位于 到 之间组成,且不能含有前导 ),整数之间用 分隔。给定一个只包含数字的字符串 ,用以表示一个 IP 地址,返回所有可能的有效 IP 地址,这些地址可以通过在 中插入 来形成。你 不能 重新排序或删除 中的任何数字。你可以按 任何 顺序返回答案。示例 1:输入:s = "25525511135"输出:["255.255.11.135","255.255.111.35"]示例 2:输入:s = "0000"输出:["0.0.0.0"]原创 2024-01-22 13:39:34 · 875 阅读 · 0 评论 -
131. 分割回文串
在处理组合问题的时候,递归参数需要传入startIndex,表示下一轮递归遍历的起始位置,这个startIndex就是切割线。原创 2024-01-22 12:25:54 · 877 阅读 · 0 评论 -
40. 组合总和 II
给定一个候选人编号的集合candidates和一个目标数target,找出candidates中所有可以使数字和为target的组合。candidates中的每个数字在每个组合中只能使用。解集不能包含重复的组合。原创 2024-01-21 13:37:03 · 826 阅读 · 0 评论 -
39. 组合总和
给你一个 无重复元素 的整数数组 和一个目标整数 ,找出 中可以使数字和为目标数 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。 中的 同一个 数字可以 无限制重复被选取 。如果至少一个数字的被选数量不同,则两种组合是不同的。 对于给定的输入,保证和为 的不同组合数少于 个。示例 1:输入:candidates = target = 输出:[[2,2,3],[7]]解释:2 和 3 可以形成一组候选,2 + 2 + 3 = 7 。注意 2 可以使用多次。7原创 2024-01-21 12:44:59 · 742 阅读 · 0 评论 -
17. 电话号码的字母组合
给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。答案可以按返回。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。原创 2024-01-21 12:03:46 · 775 阅读 · 0 评论 -
216. 组合总和 III
找出所有相加之和为n的k返回所有可能的有效组合的列表。该列表不能包含相同的组合两次,组合可以以任何顺序返回。= 3,= 7[[1,2,4]]没有其他符合的组合了。= 3,= 9没有其他符合的组合了。[]不存在有效的组合。在[1,9]范围内使用4个不同的数字,我们可以得到的最小和是1+2+3+4 = 10,因为10 > 1,没有有效的组合。原创 2024-01-21 10:58:18 · 828 阅读 · 0 评论 -
77. 组合
给定两个整数n和k,返回范围[1, n]中所有可能的k个数的组合。你可以按返回答案。那么我把组合问题抽象为如下树形结构:可以看出这棵树,一开始集合是 1,2,3,4, 从左向右取数,取过的数,不再重复取。第一次取1,集合变为2,3,4 ,因为k为2,我们只需要再取一个数就可以了,分别取2,3,4,得到集合[1,2] [1,3] [1,4],以此类推。。。原创 2024-01-21 10:26:48 · 795 阅读 · 0 评论