Leetcode 78 Posted on 2019-04-15 | | 阅读数 Words count in article: 141 | Reading time ≈ 1 Question1 Solution依旧修改第46题代码,每递归一次将temp添加到results上,并且修改判断语句。 12345678910111213class Solution: def subsets(self, nums: List[int]) -> List[List[int]]: results = [] self.dfs(nums, [], results) return results def dfs(self, nums, temp, results): results.append(temp) if not nums: return for i in range(len(nums)): self.dfs(nums[i+1:], temp+[nums[i]], results) Question2 Solution额外添加一个控制条件,防止重复出现。 1234567891011121314class Solution: def subsets(self, nums: List[int]) -> List[List[int]]: results = [] self.dfs(nums, [], results) return results def dfs(self, nums, temp, results): results.append(temp) if not nums: return for i in range(len(nums)): self.dfs(nums[i+1:], temp+[nums[i]], results)