子集
给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。
解集 不能 包含重复的子集。你可以按 任意顺序 返回解集
方法一: 迭代,参考
class Solution(object):
def subsets(self, nums):
"""
:type nums: List[int]
:rtype: List[List[int]]
"""
#迭代
res =[[]]
for num in nums:
res = res + [i + [num] for i in res]
return res
class Solution(object):
def subsets(self, nums):
"""
:type nums: List[int]
:rtype: List[List[int]]
"""
# #迭代
# res =[[]]
# for num in nums:
# res = res + [i + [num] for i in res]
# return res
def dfs(tem, k):
res.append(tem)
for i in range(k, len(nums)):
dfs(tem + [nums[i]], i+1)
res = []
dfs([], 0)
return res