-
题目链接 https://leetcode-cn.com/problems/subsets-ii/submissions/
-
题目描述
- 给定一个可能包含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)
-
输入: [1,2,2] 输出: [ [2], [1], [1,2,2], [2,2], [1,2], [] ]
-
解题思路
- 暴力枚举法, 在枚举前先排序,以便去重
-
代码
- python
class Solution: def subsetsWithDup(self, nums): nums.sort() N = len(nums) ans = [] def _dfs(index, res): nonlocal ans if index == N: return ans.append(res) for i in range(index, N): if i == index or nums[i] != nums[i - 1]: #相同元素一个位置只选取一次 _dfs(i + 1, res + [nums[i]]) _dfs(N, res) _dfs(0, []) return ans
- python
leetcode 90. 子集 II
最新推荐文章于 2024-05-23 20:34:16 发布