leetcode 46 全排列 (python)
给定一个没有重复数字的序列,返回其所有可能的全排列。 示例: 输入: [1,2,3] 输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1] ] class Solution: def permute(self, nums: List[ int ]) -> List[List[ int ]]: results = [] len_n = len(nums) def backtrack(my_nums, use_nums): if len(my_nums) == len_n: results.append(my_nums) return for i in range(len(use_nums)): x = my_nums.copy() x.append(use_nums[i]) backtrack(x, use_nums[:i] +use_nums[i+ 1 :]) # 不包含i元素 backtrack([], nums) return results 参考:https://www.cnblogs.com/watch-fly/p/leetcode_46_watchfly.html 来源: oschina 链接: https://my.oschina.net/u/4399215/blog/3435803