递归
class Solution:
def __init__(self):
self.nums = None
self.size = None
self.res = []
def dfs(self, ans, x=0):
self.res.append(ans.copy())
for i in range(x, self.size):
ans.append(self.nums[i])
self.dfs(ans, i + 1)
ans.pop()
def subsets(self, nums):
self.nums = nums
self.size = len(nums)
self.dfs([])
return self.res