Subsets
来源:互联网 发布:dream it possible 编辑:程序博客网 时间:2024/06/05 04:12
可以发现S=[1, 2] 的解就是 把S = [1]的所有解末尾添上2,然后再并上S = [1]里面的原有解。
class Solution {public:vector<vector<int>> subsets(vector<int>& nums) {vector<vector<int> > res;vector<int> emp;res.push_back(emp);sort(nums.begin(), nums.end());if (nums.size() == 0) return res;for (vector<int>::iterator ind = nums.begin(); ind < nums.end(); ++ind){int size = res.size();for (int i = 0; i < size; ++i) {vector<int> v(res[i]);v.push_back(*ind);res.push_back(v);}}return res;}};
dfs:如果单独看某一个元素,它都有两种选择:"被包含在子集中"和"不被包含在子集中",对于元素个数为n、且不含重复元素的S,子集总数是2n。
class Solution {public:vector<vector<int> > subsets(vector<int> &S) {vector<int> v;sort(S.begin(), S.end());subsetsCore(S, 0, v);return res;}private:vector<vector<int> > res;void subsetsCore(vector<int> &S, int start, vector<int> &v) {if (start == S.size()) { res.push_back(v); return; }vector<int> v2(v);v.push_back(S[start]);subsetsCore(S, start + 1, v); //包含S[start]subsetsCore(S, start + 1, v2); //不包含S[start]}};
0 0
- Subsets
- Subsets
- Subsets
- Subsets
- Subsets
- Subsets
- Subsets
- Subsets
- Subsets
- Subsets
- Subsets
- Subsets
- Subsets
- Subsets
- Subsets
- Subsets
- Subsets
- Subsets
- NOIP 2015 D2 T2 子串 substring
- hdu1024 Max Sum Plus Plus
- Longest Palindromic Substring_Leetcode_#5
- 电脑忘记密码的操作
- python基础语法
- Subsets
- loghtoj-1067
- 32位ubuntu安装mongodb数据库
- 带你剖析WebGis的世界奥秘----点和线的世界
- 认识css样式以及优势
- Css实现倒三角图标
- 欢迎使用CSDN-markdown编辑器
- java基于rxtx串口操作
- Java下的关键字、保留字