47. Permutations II (Medium) - TengnanYao/daily_leetcode GitHub Wiki
class Solution(object):
def permuteUnique(self, nums):
"""
:type nums: List[int]
:rtype: List[List[int]]
"""
self.result = []
nums.sort()
def dfs(nums, res):
if not nums:
self.result.append(res)
for i in range(len(nums)):
if i > 0 and nums[i] == nums[i - 1]:
continue
dfs(nums[ : i] + nums[i + 1 : ], res + [nums[i]])
dfs(nums, [])
return self.result