A27660. 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列示例 1输入nums = [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]示例 2输入nums = [0,1]输出:[[0,1],[1,0]]示例 3输入nums = [1]输出:[[1]]
填空题
较易
知识点
题目描述
给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列
示例 1
输入
nums = [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]
示例 2
输入
nums = [0,1]输出:[[0,1],[1,0]]
示例 3
输入
nums = [1]输出:[[1]]
参考答案
def permute(nums):
if not nums:
return [[]]
result = [[]]
for num in nums:
new_result = []
for res in result:
for i in range(len(res) + 1):
new_result.append(res[:i] + [num] + res[i:])
result = new_result
return result
# 示例用法
nums = [1, 2, 3]
print("所有可能的全排列为:", permute(nums))
上一题
下一题