题目
基本思路
进行排列数,典型的DFS
代码
class Solution:
def permuteUnique(self, nums):
"""
:type nums: List[int]
:rtype: List[List[int]]
"""
res = []
nums.sort()
self.dfs(nums,[],res)
return res
def dfs(self,nums,path,res):
for i in range(len(nums)):
if i > 0 and nums[i-1] == nums[i]:
continue
self.dfs(nums[:i]+nums[i+1:],path+[nums[i]],res)
if len(nums) == 0:
res.append(path)
运行结果
30 / 30 test cases passed.
Status: Accepted
Runtime: 80 ms