01 · Question
Given an array nums of distinct integers, return all possible permutations.
nums
02 · Solution
1def permute(nums: List[int]) -> List[List[int]]:2 res = []3 used = [False] * len(nums)4 cur = []5 6 def dfs() -> None:7 if len(cur) == len(nums):8 res.append(cur[:])9 return10 for i in range(len(nums)):11 if used[i]:12 continue13 used[i] = True14 cur.append(nums[i])15 dfs()16 cur.pop()17 used[i] = False18 19 dfs()20 return res