发现写了return的话,运行速度会更快
如果不sort()的话,运行结果会错误
class Solution:
def subsetsWithDup(self, nums: List[int]) -> List[List[int]]:
nums.sort()
self.path = []
self.paths = []
self.backTracking(nums,0)
return self.paths
def backTracking(self,nums,startIndex):
self.paths.append(self.path[:])
if startIndex == len(nums):
return
visited = []
for i in range(startIndex,len(nums)):
if i>startIndex and nums[i] == nums[i-1]:
continue
else:
self.path.append(nums[i])
self.backTracking(nums,i+1)
self.path.pop()
return