LeetCode – Refresh – Subsets II
2015-03-24 15:17
211 查看
Nothing fancy. Just skip the duplicated ones as num[i] == num[i-1]
class Solution { public: void getComb(vector<vector<int> > &result, vector<int> &num, vector<int> current, int index, int len) { if (current.size() == len) { result.push_back(current); return; } for (int i = index; i < num.size(); i++) { if (i > index && num[i] == num[i-1]) continue; current.push_back(num[i]); getComb(result, num, current, i+1, len); current.pop_back(); } } vector<vector<int> > subsetsWithDup(vector<int> &S) { vector<vector<int> > result; sort(S.begin(), S.end()); for (int i = 0; i <= S.size(); i++) { getComb(result, S, vector<int>(), 0, i); } return result; } };
相关文章推荐
- LeetCode | Subsets II
- LeetCode – Refresh – Balanced Binary Tree
- [LeetCode] Subsets II 解题报告
- LeetCode – Refresh – Climbing Stairs
- LeetCode – Refresh – Count and Say
- LeetCode – Refresh – Insert Inverval
- LeetCode – Refresh – Longest Consecutive Sequence
- LeetCode – Refresh – Minimum Window Substring
- LeetCode – Refresh – One Edit Distance
- LeetCode – Refresh – Permutations
- LeetCode – Refresh – Remove Duplicates from Sorted List
- LeetCode - Refresh - Single Number
- LeetCode – Refresh – Surrounded Regions
- LeetCode – Refresh – Word Break
- LeetCode – Refresh – Valid Binary Search Tree
- leetcode笔记:Subsets II
- 【leetcode】Subsets II
- Leetcode--Subsets II
- Subsets II ——LeetCode
- LeetCode--Subsets II