递归和回溯_leetcode78-经典的子集

class Solution(object):
def subsets(self, nums):
"""
:type nums: List[int]
:rtype: List[List[int]]
"""

self.res = []
self.res.append([])
# for i in range(len(nums)):
self.generateSub(nums,0,[])
# print self.res

return self.res


def generateSub(self,nums,start,ans):

if ans:
self.res.append(ans[0:])


for i in range(start,len(nums)):
ans.append(nums[i])
self.generateSub(nums,i+1,ans)
ans.pop()




s = Solution()

nums = [1,2,3]

s.subsets(nums)

猜你喜欢

转载自www.cnblogs.com/lux-ace/p/10556982.html