kjp0411 님의 블로그
동적 계획법 - 동적 계획법 알아보기 본문
동적 계획법은 복잡한 문제를 여러 개의 간단한 문제로 분리하여 부분의 문제들을 해결함으로써 최종적으로 복잡한 문제의 답을 구하는 방법을 뜻합니다.
동적 계획법의 핵심 이론
- 동적 계획법으로 풀 수 있는지 확인하기
- 점화식 세우기
- 메모이제이션 원리 이해하기
- TOP - DOWN 구현 방식 이해하기
- BOTTOM - UP 구현 방식 이해하기
동적 계획법의 원리와 구현 방식
- 큰 문제를 작은 문제로 나눌 수 있어야 한다.
- 작은 문제들이 반복돼 나타나고 사용되며 이 작은 문제들의 결괏값은 항상 같아야 한다.
- 모든 작은 문제들은 한 번만 계산해 DP 테이블에 저장하며 추후 재사용할 때는 이 DP 테이블을 이용한다.
- 동적 계획법은 TOP - DOWN 방식과 BOTTOM - UP 방식으로 구현할 수 있다.
동적 계획법의 가장 대표적인 문제인 피보나치 수열 공식
D[N] = D[N - 1] + D[N - 2]
'Coding Test > Python' 카테고리의 다른 글
| 기하 - 기하 알아보기 (0) | 2025.10.06 |
|---|---|
| 조합 - 조합 알아보기 (0) | 2025.10.06 |
| 트리 - 최소 공통 조상 (0) | 2025.10.03 |
| 트리 - 세그먼트 트리 (0) | 2025.10.01 |
| 트리 - 이진 트리 (0) | 2025.10.01 |
