leetcode刷题
- 338. 比特位计数 动态规划解法[TODO]
- 169. 多数元素 很多种解法 [TODO]
- 31. 下一个排列 感觉还是比较难的,不保证完全掌握
题型汇总
==对于这类寻找所有可行解的题,我们都可以尝试用「搜索回溯」的方法来解决。==
回溯法:一种通过探索所有可能的候选解来找出所有的解的算法。如果候选解被确认不是一个解(或者至少不是最后一个解),回溯算法会通过在上一步进行一些变化抛弃该解,即回溯并且再次尝试。
要学会用递归
相关题目有:
39. 组合总和
难度中等2209收藏分享切换为英文接收动态反馈
给你一个 无重复元素 的整数数组 candidates
和一个目标整数 target
,找出 candidates
中可以使数字和为目标数 target
的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。
candidates
中的 同一个 数字可以 无限制重复被选取 。如果至少一个数字的被选数量不同,则两种组合是不同的。
对于给定的输入,保证和为 target
的不同组合数少于 150
个。
46. 全排列
难度中等2262
给定一个不含重复数字的数组 nums
,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。
示例 1:
1 | 输入:nums = [1,2,3] |
示例 2:
1 | 输入:nums = [0,1] |
示例 3:
1 | 输入:nums = [1] |
(dfs:深度优先遍历)