Leetcode - 46. Permutations
Coding Test

Leetcode - 46. Permutations

일시불

문제

풀이

class Solution:
    def permute(self, nums: List[int]) -> List[List[int]]:
        def get_perm(nums_):
            if len(nums_) == 1:
                return [nums_]

            res = []
            for num1 in nums_:
                perms = get_perm([num2 for num2 in nums_ if num1 != num2])
                for perm in perms:
                    res.append([num1] + perm)

            return res

        return get_perm(nums)

전형적인 DFS 문제다. 왜 난이도가 medium인지 모르겠다..