全排列(python实现)

题目描述:
给定一个没有重复数字的序列,返回其所有可能的全排列。

示例:
输入: [1,2,3]
输出:
[
[1,2,3],
[1,3,2],
[2,1,3],
[2,3,1],
[3,1,2],
[3,2,1]
]

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/permutations

思路:利用python自带itertools
代码:

import itertools 

class Solution:
    def __init__(self,nums):
        self.nums=(nums)
        
        self.result=self.permute(self.nums)
    def permute(self, nums):
        A = list(itertools.permutations(nums, len(nums)))
        for i in range(len(A)):
            A[i]=list(A[i])
        
        
        return A
    
if __name__=='__main__':
    nums = [1,2,3]
    solution=Solution(nums)
    Lst=solution.result
    print(Lst)

运行结果:
[[1, 2, 3], [1, 3, 2], [2, 1, 3], [2, 3, 1], [3, 1, 2], [3, 2, 1]]

你可能感兴趣的:(全排列(python实现))