90. Subsets II
2016-07-21 22:41
316 查看
Given a collection of integers that might contain duplicates, nums, return all possible subsets.
Note: The solution set must not contain duplicate subsets.
For example,
If nums =
Subscribe to see which companies asked this question
// static map<int,int> m1;
class Solution {
public:
void backtrack(int j, set<vector<int>>& s1,vector<int> temp,const vector<int>& nums)
{
if(temp.size()<=nums.size())
{
sort(temp.begin(),temp.end());
s1.insert(temp);
if(temp.size()==nums.size())
return ;
}
{
for(int i=j;i<nums.size();++i)
{
temp.push_back(nums[i]);
backtrack(i+1,s1,temp,nums);
temp.pop_back();
}
return ;
}
}
vector<vector<int>> subsetsWithDup(vector<int>& nums) {
set<vector<int>> s1;
vector<int> temp;
s1.insert(temp);
for(int i= 0;i<nums.size();++i)
{
temp.push_back(nums[i]);
backtrack(i+1,s1,temp,nums);
temp.pop_back();
}
return vector<vector<int>>(s1.begin(),s1.end());
}
};
Note: The solution set must not contain duplicate subsets.
For example,
If nums =
[1,2,2], a solution is:
[ [2], [1], [1,2,2], [2,2], [1,2], [] ]
Subscribe to see which companies asked this question
// static map<int,int> m1;
class Solution {
public:
void backtrack(int j, set<vector<int>>& s1,vector<int> temp,const vector<int>& nums)
{
if(temp.size()<=nums.size())
{
sort(temp.begin(),temp.end());
s1.insert(temp);
if(temp.size()==nums.size())
return ;
}
{
for(int i=j;i<nums.size();++i)
{
temp.push_back(nums[i]);
backtrack(i+1,s1,temp,nums);
temp.pop_back();
}
return ;
}
}
vector<vector<int>> subsetsWithDup(vector<int>& nums) {
set<vector<int>> s1;
vector<int> temp;
s1.insert(temp);
for(int i= 0;i<nums.size();++i)
{
temp.push_back(nums[i]);
backtrack(i+1,s1,temp,nums);
temp.pop_back();
}
return vector<vector<int>>(s1.begin(),s1.end());
}
};
相关文章推荐
- 【Unity】非MonoBehaviour子类的单例管理
- 【趣题】【"竖着的"线段树】NKOJ 3726 史上最大值
- 微信js 上传多个照片IOS,只上传了最后一个
- POJ 3150 Cellular Automaton
- 用Fiddler查看 Android/iOS 网络请求
- 创建游戏的登录注册界面
- vim配置for c++
- 最小生成树[Kruskal&&Prim](学习)
- mysql 表名、字段名大小写
- MapReduce框架Partitioner分区方法
- L1-020. 帅到没朋友-PAT团体程序设计天梯赛GPLT
- Java对象和XML转换
- 树种统计
- 八年开心网,它的是非功过都在这里了
- 每天进步一点点
- java基础之I/O流
- Haar小波变换
- Maven常用命令
- winform 防止主界面卡死
- POJ1028——Web Navigation