Leetcode - 47. 全排列 II

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

示例 1:

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

示例 2:

输入:nums = [1,2,3]
输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]

提示:

  • 1 <= nums.length <= 8
  • -10 <= nums[i] <= 10

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/permutations-ii
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解1 2021/9/7 O(?)

from itertools import permutations

def permuteUnique(nums: list) -> list:
    res=[]
    for p in permutations(nums):
        u=list(p)
        if u not in res:
            res.append(list(p))
    return res

if __name__ == '__main__':
    print(permuteUnique([1,1,2]))
    print(permuteUnique([1,2,3]))
    print(permuteUnique([1]))
    print(permuteUnique([1,1]))

Leetcode - 47. 全排列 II

上一篇:Slidepad for Mac(高效率办公软件) v1.0.47激活版


下一篇:(转)hive调优(1) coding调优