Tuesday, 22 December 2015

#LeetCode# Subsets II stl awesome

LeetCode Subsets II

class Solution {

public:

    void subset(vector<int>& nums,set < vector < int > > &ans,vector < int > temp,int idx,int n){

        if(idx==n)

        {

            ans.insert(temp);

            return ;

        }

        subset(nums,ans,temp,idx+1,n);

        temp.push_back(nums[idx]);

        subset(nums,ans,temp,idx+1,n);

    }

    vector<vector<int>> subsetsWithDup(vector<int>& nums) {

        vector < vector < int > > a;

        set < vector < int > > ans;

        vector < int > temp;

        int n=nums.size();

        if(n==0)

          return a;

        sort(nums.begin(),nums.end());

        subset(nums,ans,temp,0,n);

      vector < vector < int > > b(ans.begin(),ans.end());

      return b;

    }

};

No comments:

Post a Comment