RODcut
-
Dynamic Programming(1)알고리즘 2020. 6. 19. 01:13
다이나믹 프로그래밍의 가장 큰 컨셉은 "subproblem의 결과를 저장해서 사용한다" 그래서, 2가지가 가장 중요한 포인트라고 생각하는데, 1. subproblem을 어떻게 만들것인가? (90%) 2. 이걸 어떤 형식으로 저장하고, 사용할 것인가? (10%) subproblem을 어떻게 만들것인가를 아는 순간 2번은 자연스럽게 나올것이라고 생각된다. 다이나믹 프로그래밍을 다루는(?) 2방식이 있는데, 첫번째는 "Bottom to Top" 으로 일단 inital부터 내가 구하는 값까지의 데이터를 다 저장한 뒤, 꺼내쓰는 방법 두번째는 "Top to Bottom(memoized)"으로 재귀를 통해 값들을 채워나가는 방법 아마 두번째가 더 많이 쓰이는 것 같기는 한데, 처음 다이나믹 프로그래밍을 다룰때 빠른..