Skip to content

Latest commit

 

History

History
28 lines (25 loc) · 684 Bytes

047.md

File metadata and controls

28 lines (25 loc) · 684 Bytes

47. Permutations II

Solution 1

# DFS
class Solution(object):
    def permuteUnique(self, nums):
        """
        :type nums: List[int]
        :rtype: List[List[int]]
        """
        nums.sort()
        ans = []
        self._permuteUnique(nums, [], ans)
        return ans

    def _permuteUnique(self, nums, cur, ans):
        if len(nums) == 0:
            ans.append(cur[:])
            return
        for i, num in enumerate(nums):
            if i > 0 and nums[i] == nums[i - 1]:
                continue
            cur.append(num)
            self._permuteUnique(nums[:i] + nums[i + 1:], cur, ans)
            cur.pop()