46.Permutations

25 年 7 月 28 日 星期一
71 字
1 分钟
python
class Solution:
    def permute(self, nums: List[int]) -> List[List[int]]:
        # answer perspective(对每个位置枚举一个数)
        # using hash set for efficiency
        ans = []
        path = []
        n = len(nums)
        def dfs(i, s):
            if i == n:
                ans.append(path[:])
                return
            # 和组合相比需要顺序不一样的解
            for j in s:
                path.append(j)
                dfs(i+1, s-{j})
                path.pop()
        dfs(0, set(nums))
        return ans

文章标题:46.Permutations

文章作者:Sirui Chen

文章链接:https://blog.siruichen.me/posts/46permutations[复制]

最后修改时间:


商业转载请联系站长获得授权,非商业转载请注明本文出处及文章链接,您可以自由地在任何媒体以任何形式复制和分发作品,也可以修改和创作,但是分发衍生作品时必须采用相同的许可协议。
本文采用CC BY-NC-SA 4.0进行许可。