フル配列(Python 3)
タイトルの説明:重複する数字のないシーケンスを指定し、可能なすべての配列を返します.
例:
入力:[1,2,3]
出力:
[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]
問題解決の考え方:
コードは次のとおりです.
時間と空間の複雑さ:
タイトルソース:リートコード参考ブログ:https://blog.csdn.net/weixin_41958153/article/details/81015423
例:
入力:[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]]:
self.length = len(nums)
self.re = []
self.sub_permute(nums,[])
return self.re
def sub_permute(self,nums,temp):
if len(temp) == self.length:
self.re.append(temp)
else:
for i in nums:
self.sub_permute(nums[:nums.index(i)]+nums[nums.index(i)+1:],temp+[i])
時間と空間の複雑さ:
タイトルソース:リートコード参考ブログ:https://blog.csdn.net/weixin_41958153/article/details/81015423