1.给出一组可能包含重复项的数字,返回该组数字的所有排列
例如;
[1,1,2]的排列如下:
[1,1,2],[1,2,1], [2,1,1].
def permute(nums):
res = []
def backtrack(nums, tmp):
# 判断数组是否为空
if not nums:
res.append(tmp)
return
for i in range(len(nums)):
# 去掉i进行回溯
backtrack(nums[:i] + nums[i + 1:], tmp + [nums[i]])
backtrack(nums, [])
return res
print(permute('123'))