
回溯
回溯相关题目
努力d小白
这个作者很懒,什么都没留下…
展开
-
leetcode131.分割回文串
思路:主要就是确定一个串的start和end。分割成一些子串,使每个子串都是。所有可能的分割方案。原创 2025-01-14 21:28:46 · 366 阅读 · 0 评论 -
leetcode79.单词搜索
思路:原始思路是四个方向回溯,注意一旦找到word后续不用再进行搜索,立刻停止;但往往面试官会要求做优化,因此优化算法为统计word和board次数,如果一个字母在word中出现了x次,在board中出现了y次,且y<x,则不用再进行查找,直接返回false。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。原创 2025-01-11 17:56:40 · 350 阅读 · 0 评论 -
leetcode22.括号生成
代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且。思路:重点在于往里面扩选的时候要保证生成的括号组合是有效的。原创 2025-01-11 12:53:25 · 247 阅读 · 0 评论 -
leetcode39.组合总和
2 和 3 可以形成一组候选,2 + 2 + 3 = 7。注意 2 可以使用多次。7 也是一个候选, 7 = 7。那道题有点像,注意点为为了防止结果重复,每次扩选为在本次数字及本次数字之后的,用index来控制。如果至少一个数字的被选数量不同,则两种组合是不同的。对于给定的输入,保证和为。,并以列表形式返回。中可以使数字和为目标数。原创 2025-01-09 16:13:00 · 507 阅读 · 0 评论 -
leetcode17.电话号码的字母组合
那道题有异曲同工之妙,也是利用index控制下次扩选的范围,唯一不同之处在于在终止条件处收集结果。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。的字符串,返回所有它能表示的字母组合。原创 2025-01-09 13:30:23 · 363 阅读 · 0 评论 -
leetcode78.子集
注意点2:ret加入到list,再修改ret也会导致list中元素改变,因此要添加深拷贝ret到list。注意点1:每次扩选的数字必须是在本次数字之后的,用index来控制。子集问题特别的一点是不在递归终止条件处收集结果。返回该数组所有可能的子集(幂集)。原创 2025-01-08 16:16:17 · 471 阅读 · 0 评论 -
leetcode46.全排列
给定一个不含重复数字的数组。原创 2025-01-08 15:43:31 · 222 阅读 · 0 评论