题目:
给定一个可包含重复数字的序列,返回所有不重复的全排列。
示例:
输入: [1,1,2]
输出:
[
[1,1,2],
[1,2,1],
[2,1,1]
]
python代码:
class Solution:
def permuteUnique(self, nums):
if len(nums) <= 1:
return [nums]
res = []
for i in range(len(nums)):
for j in self.permuteUnique(nums[:i] + nums[i+1:]):
res.append([nums[i]] + j)
return ([res[i] for i in range(len(res)) if res[i] not in res[:i]])