LeetCode90:Subsets II

原创 2015年07月08日 11:12:56

Given a collection of integers that might contain duplicates, nums, return all possible subsets.

Note:
Elements in a subset must be in non-descending order.
The solution set must not contain duplicate subsets.
For example,
If nums = [1,2,2], a solution is:
这里写图片描述

这道题是求子集Subsets的更一般的情况,即给定的集合中存在重复的情况,可以使用Combination Sum II 相同的方法来消除重复元素。

做到现在发现好多题目都是触类旁通的了。

runtime:8ms

class Solution {
public:
    vector<vector<int>> subsetsWithDup(vector<int>& nums) {
            vector<int> path;
            vector<vector<int>> result;
            result.push_back(path);
            sort(nums.begin(),nums.end());
            helper(nums,0,path,result);
            return result;
    }

    void helper(vector<int> &nums,int pos,vector<int>& path,vector<vector<int>> &result)
    {
        if(pos==nums.size())
            return ;

        for(int i=pos;i<nums.size();i++)
        {
            path.push_back(nums[i]);
            result.push_back(path);
            helper(nums,i+1,path,result);
            path.pop_back();
            while(nums[i]==nums[i+1]) i++;
        }
    }
};

LeetCode 90:Subsets II

Given a collection of integers that might contain duplicates, nums, return all possible subsets. ...
  • geekmanong
  • geekmanong
  • 2016年01月25日 17:09
  • 2046

[LeetCode 90] Subsets II

题目链接:subsets-ii import java.util.ArrayList; import java.util.Arrays; import java.util.HashSet; ...
  • ever223
  • ever223
  • 2015年03月28日 00:32
  • 1035

Subsets II -- LeetCode

原题链接: http://oj.leetcode.com/problems/subsets-ii/ 这道题跟Subsets一样是经典的NP问题--求子集。比Subsets稍微复杂一些的是这里的集合中...
  • linhuanmars
  • linhuanmars
  • 2014年04月28日 04:23
  • 11887

Leetcode: Subsets II

Given a collection of integers that might contain duplicates, S, return all possible subsets. Note:...
  • doc_sgl
  • doc_sgl
  • 2013年10月03日 22:05
  • 4484

90. Subsets II

Given a collection of integers that might contain duplicates, S, return all possible subsets. Note: ...
  • sjt091110317
  • sjt091110317
  • 2014年03月05日 17:24
  • 634

leetcode78、90-Subsets I/II(组合数/子集数目)

问题描述:Given a set of distinct integers, nums, return all possible subsets.Note: Elements in a subset...
  • will130
  • will130
  • 2016年04月30日 12:16
  • 290

LeetCode(90)Subset II

题目如下: Given a collection of integers that might contain duplicates, S, return all possible subsets. ...
  • feliciafay
  • feliciafay
  • 2014年02月08日 02:27
  • 1953

LeetCode78/90 subset I/II**

一:Unique paths I 题目: Given a set of distinct integers, S, return all possible subsets. Note: El...
  • Lu597203933
  • Lu597203933
  • 2015年04月06日 15:22
  • 1517

LeetCode 90 Subsets II--In C++

思路: 由于这道题增加了冗余的属性,所以如果用Subset 1中的暴力递归进行求解的话,会浪费很多时间在扫描判断是否有重复值上。因此,类似于全排列的那个题,想到了在之前的基础上添加一个元素即可形成全...
  • sinat_27564919
  • sinat_27564919
  • 2016年06月04日 16:01
  • 224

90. Subsets II Leetcode Python

Given a collection of integers that might contain duplicates, S, return all possible subsets. Note: ...
  • hyperbolechi
  • hyperbolechi
  • 2015年01月15日 06:03
  • 1192
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:LeetCode90:Subsets II
举报原因:
原因补充:

(最多只允许输入30个字)