首页 > 代码库 > Leetcode#78 Subsets

Leetcode#78 Subsets

原题地址

 

基本DFS,对于每个元素,要么选,要么不选。记得先排序,因为结果集的数字要从小到大出现。

 

代码:

 1 vector<vector<int> > res; 2  3 void dfs(vector<int> &S, vector<int> ans, int pos) { 4   if (pos == S.size()) { 5     res.push_back(ans); 6     return; 7   } 8   dfs(S, ans, pos + 1); 9   ans.push_back(S[pos]);10   dfs(S, ans, pos + 1);11 }12 13 vector<vector<int> > subsets(vector<int> &S) {14   sort(S.begin(), S.end());15   dfs(S, vector<int>(), 0);16   return res;17 }

 

Leetcode#78 Subsets