diff --git a/problems/0078.子集.md b/problems/0078.子集.md index 21009f6a..5f3654de 100644 --- a/problems/0078.子集.md +++ b/problems/0078.子集.md @@ -27,12 +27,12 @@   [] ] -# 算法公开课 +## 算法公开课 -**《代码随想录》算法视频公开课:[回溯算法解决子集问题,树上节点都是目标集和! | LeetCode:78.子集](https://www.bilibili.com/video/BV1U84y1q7Ci),相信结合视频再看本篇题解,更有助于大家对本题的理解**。 +**[《代码随想录》算法视频公开课](https://programmercarl.com/other/gongkaike.html):[回溯算法解决子集问题,树上节点都是目标集和! | LeetCode:78.子集](https://www.bilibili.com/video/BV1U84y1q7Ci),相信结合视频再看本篇题解,更有助于大家对本题的理解**。 -# 思路 +## 思路 求子集问题和[77.组合](https://programmercarl.com/0077.组合.html)和[131.分割回文串](https://programmercarl.com/0131.分割回文串.html)又不一样了。 @@ -52,7 +52,7 @@ 从图中红线部分,可以看出**遍历这个树的时候,把所有节点都记录下来,就是要求的子集集合**。 -## 回溯三部曲 +### 回溯三部曲 * 递归函数参数 @@ -102,8 +102,6 @@ for (int i = startIndex; i < nums.size(); i++) { } ``` -## C++代码 - 根据[关于回溯算法,你该了解这些!](https://programmercarl.com/回溯算法理论基础.html)给出的回溯算法模板: ``` @@ -158,7 +156,7 @@ public: 并不会,因为每次递归的下一层就是从i+1开始的。 -# 总结 +## 总结 相信大家经过了 * 组合问题: @@ -178,10 +176,10 @@ public: **而组合问题、分割问题是收集树形结构中叶子节点的结果**。 -# 其他语言版本 +## 其他语言版本 -## Java +### Java ```java class Solution { List> result = new ArrayList<>();// 存放符合条件结果的集合 @@ -205,7 +203,7 @@ class Solution { } ``` -## Python +### Python ```python class Solution: def subsets(self, nums): @@ -224,7 +222,7 @@ class Solution: path.pop() ``` -## Go +### Go ```Go var ( path []int @@ -248,7 +246,7 @@ func dfs(nums []int, start int) { } ``` -## Javascript +### Javascript ```Javascript var subsets = function(nums) { @@ -267,7 +265,7 @@ var subsets = function(nums) { }; ``` -## TypeScript +### TypeScript ```typescript function subsets(nums: number[]): number[][] { @@ -287,7 +285,7 @@ function subsets(nums: number[]): number[][] { }; ``` -## Rust +### Rust ```Rust impl Solution { @@ -311,7 +309,7 @@ impl Solution { } ``` -## C +### C ```c int* path; @@ -369,7 +367,7 @@ int** subsets(int* nums, int numsSize, int* returnSize, int** returnColumnSizes) } ``` -## Swift +### Swift ```swift func subsets(_ nums: [Int]) -> [[Int]] { @@ -392,7 +390,7 @@ func subsets(_ nums: [Int]) -> [[Int]] { } ``` -## Scala +### Scala 思路一: 使用本题解思路 @@ -451,3 +449,4 @@ object Solution { +