# 子集 II

<p>给你一个整数数组 <code>nums</code> ，其中可能包含重复元素，请你返回该数组所有可能的子集（幂集）。</p><p>解集 <strong>不能</strong> 包含重复的子集。返回的解集中，子集可以按 <strong>任意顺序</strong> 排列。</p><div class="original__bRMd"><div><p> </p><p><strong>示例 1：</strong></p><pre><strong>输入：</strong>nums = [1,2,2]<strong><br />输出：</strong>[[],[1],[1,2],[1,2,2],[2],[2,2]]</pre><p><strong>示例 2：</strong></p><pre><strong>输入：</strong>nums = [0]<strong><br />输出：</strong>[[],[0]]</pre><p> </p><p><strong>提示：</strong></p><ul>	<li><code>1 <= nums.length <= 10</code></li>	<li><code>-10 <= nums[i] <= 10</code></li></ul></div></div>

## template

```python
class Solution(object):
	def subsetsWithDup(self, nums):
		nums.sort()
		res = [[]]
		begin = 0
		for index in range(len(nums)):
			if index == 0 or nums[index] != nums[index - 1]:
				begin = 0
			size = len(res)
			for j in range(begin, size):
				curr = list(res[j])
				curr.append(nums[index])
				res.append(curr)
			begin = size
		return res
# %%
s = Solution()
print(s.subsetsWithDup(nums = [1,2,2]))
```

## 答案

```python

```

## 选项

### A

```python

```

### B

```python

```

### C

```python

```