mirror of
https://github.com/ShusenTang/LeetCode.git
synced 2024-09-02 14:20:01 +00:00
Update 78. Subsets.md
This commit is contained in:
parent
ea84428642
commit
af20651892
@ -23,6 +23,33 @@
|
|||||||
|
|
||||||
# C++
|
# C++
|
||||||
## 思路一
|
## 思路一
|
||||||
|
### 好理解版
|
||||||
|
``` C++
|
||||||
|
class Solution {
|
||||||
|
private:
|
||||||
|
void DFS(vector<vector<int>>&res, vector<int>&subset, const vector<int>& nums, int level){
|
||||||
|
if(level == nums.size()) { // 到达叶节点
|
||||||
|
res.push_back(subset);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 向左子树下降
|
||||||
|
subset.push_back(nums[level]);
|
||||||
|
DFS(res, subset, nums, level + 1);
|
||||||
|
subset.pop_back();
|
||||||
|
// 向右子树下降
|
||||||
|
DFS(res, subset, nums, level + 1);
|
||||||
|
}
|
||||||
|
public:
|
||||||
|
vector<vector<int>> subsets(vector<int>& nums) {
|
||||||
|
vector<vector<int>>res;
|
||||||
|
vector<int>subset;
|
||||||
|
sort(nums.begin(), nums.end());
|
||||||
|
DFS(res, subset, nums, 0);
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
```
|
||||||
|
### 简洁版
|
||||||
``` C++
|
``` C++
|
||||||
class Solution {
|
class Solution {
|
||||||
private:
|
private:
|
||||||
|
Loading…
Reference in New Issue
Block a user