[leetcode]Subsets II
来源:互联网 发布:python smtp 编辑:程序博客网 时间:2024/05/18 01:17
Subsets II
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:
[ [2], [1], [1,2,2], [2,2], [1,2], []]
题意:求子集 但数组中有重复元素
解题思路:记录重复元素每次插入的起点位置
class Solution {public: vector<vector<int>> subsetsWithDup(vector<int>& nums) { // IMPORTANT: Please reset any member data you declared, as // the same Solution instance will be reused for each test case. sort(nums.begin(), nums.end()); vector<vector<int> > v2; v2.push_back(vector<int>()); //0 int n = nums.size(); int prevSize = 0; //上一次插入时集合的大小 int prevValue = nums[0]; //上一次插入时的元素值 for(int i = 0; i < n; i++){ int curSize = v2.size(); int startIdx = 0; if(nums[i] == prevValue){ startIdx = prevSize; //新的拷贝插入起点 } prevSize = curSize; for(int j = startIdx; j < curSize; j++){ vector<int> v(v2[j]); v.push_back(nums[i]); v2.push_back(v); } prevValue = nums[i]; } return v2; }};
0 0
- 【LeetCode】 Subsets Subsets II
- 【LeetCode】Subsets & Subsets II
- LeetCode Subsets && Subsets II
- LeetCode Subsets && Subsets II
- LeetCode-Subsets & Subsets II
- [LeetCode] Combinations、Subsets、Subsets II
- 【Leetcode】【python】Subsets/Subsets II
- LeetCode: Subsets II
- LeetCode SubSets II
- LeetCode: Subsets II
- leetcode 48: Subsets II
- [LeetCode] Subsets II
- [Leetcode] Subsets II
- [leetcode] Subsets II
- leetcode Subsets II
- leetcode Subsets II problem
- [LeetCode]Subsets II
- [leetcode]Subsets II
- 机器学习--判别式模型与生成式模型
- pugixml库的使用
- 猜猜结果是什么?
- 东软镜像地址
- Going Home (hdu 1533 最小费用流)
- [leetcode]Subsets II
- 百度地图无法使用滚轮滑动bug
- 【JAVA】包
- Android演示工具
- easyui动态生成页面元素时,easyui样式失效问题
- POJ 2653 判断线段相交
- 黑马程序员——java语法
- Java常用的类,包,接口
- Ubuntu 命令学习