回溯之全排列类似所有可能路径

class Solution:
    def permute(self, nums: List[int]) -> List[List[int]]:
        


        def dfs(first=0):

            if n == first:
                res.append(nums[:])
                
            for i in range(first,n):
                nums[i] ,nums[first]= nums[first],nums[i]
                
                dfs(first+1)
                nums[first],nums[i] = nums[i],nums[first]
        n = nums.__len__()
        res = []
        dfs()
        return res


 

posted @ 2022-02-25 00:51  pie神  阅读(21)  评论(0)    收藏  举报