排列

2020-03-07  本文已影响0人  madao756

0X00 模板题目

class Solution:
    def permute(self, nums: List[int]) -> List[List[int]]:
        cur = []
        used = [False] * len(nums)
        ans = []
        def dfs():
            if len(cur) == len(nums):
                ans.append(cur[:])
                return
            
            for i, n in enumerate(nums):
                if used[i]:continue
                used[i] = True
                cur.append(n)
                dfs()
                used[i] = False
                cur.pop()

        dfs()
        return ans

很典型的「排列模板题目」用 dfs 生成所有排列, 通常使用 cur 数组去做, 减少拷贝的次数

0X01 注意事项

暂无

0X02 相关题目

上一篇 下一篇

猜你喜欢

热点阅读