-
[파이썬] 리트코드 78. Subsets 풀이기타/알고리즘 2020. 12. 24. 22:09반응형
Subsets - LeetCode
Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.
leetcode.com
nums = [1,2,3]일 때 부분집합의 개수를 구하는 문제다.
탐색 알고리즘을 실행했을 때, 모든 탐색의 결과가 정답이 된다. 따라서 dfs로 간단하게 풀 수 있다.
1. 인덱스와 경로를 변수로 가지는 dfs를 정의하고
2. 지나온 경로를 결과값에 저장하면서
3. 모든 경로에 대해 탐색을 실행한다
class Solution: def subsets(self, nums: List[int]) -> List[List[int]]: result = [] def dfs(index,path): result.append(path) for i in range(index,len(nums)): dfs(i+1,path+[nums[i]]) dfs(0,[]) return result
반응형'기타 > 알고리즘' 카테고리의 다른 글
[파이썬] 리트코드 39. Combination Sum 풀이 (0) 2020.12.24 [파이썬] 리트코드 53. Maximum Subarray 풀이 (0) 2020.12.24 [파이썬] 다이나믹 프로그래밍 기초 (0) 2020.12.23 [파이썬] 리트코드 509. Fibonacci Number 풀이 (0) 2020.12.22 백준 파이썬 18352 : 특정 거리의 도시 찾기 풀이 (0) 2020.12.22