LeetCode-47、全排列 II-中等

mac2023-06-09  18

LeetCode-47、全排列 II-中等

给定一个可包含重复数字的序列,返回所有不重复的全排列。

示例:

输入: [1,1,2] 输出: [   [1,1,2],   [1,2,1],   [2,1,1] ]

 

代码1:库函数

class Solution: def permuteUnique(self, nums: List[int]) -> List[List[int]]: return set(list(itertools.permutations(nums)))

 

 

代码2:回溯

class Solution: def permuteUnique(self, nums: List[int]) -> List[List[int]]: res = [] def backtrack(nums, tmp): if not nums and tmp not in res: res.append(tmp) return for i in range(len(nums)): backtrack(nums[:i] + nums[i+1:], tmp + [nums[i]]) backtrack(nums, []) return res

最新回复(0)