A. 동적 계획법 (Dynamic Programming)
1. Dynamic Programming
a. 동적 계획법이란?
🌟 큰 문제를 작은 하위 문제로 나누어 푸는 알고리즘 설계 기법
최적화 문제나 최단 경로 문제와 같이 큰 문제를 작은 부분으로 나누어 해결해야 하는 경우에 사용
ex) 피보나치 수열 계산, 그래프 최단 경로 찾기, 배낭 문제
b. 동적 계획법의 특징
- 중복 계산 최소화: 동적 계획법은 작은 하위 문제의 해답을 저장하고 재활용하여 중복 계산을 피해 시간 복잡도를 획기적으로 줄임
- 최적 부분 구조: 큰 문제의 최적 해결 방법이 작은 하위 문제의 최적 해결 방법으로부터 구성될 수 있어야 함. 이를 통해 작은 하위 문제의 해답을 결합하여 전체 문제의 최적 해답을 찾을 수 있음
- 상향식 접근법: 하위 문제부터 시작하여 상위 문제의 해답을 구하는 방식으로 문제를 해결. 이를 통해 전체 문제의 해답을 구할 수 있음
c. 이항계수
d. 무기 강화 주문서 예제
[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버 -
어디부터 시작할지 막막한 게임 프로그래밍 입문자를 위한 All-In-One 커리큘럼입니다. C++, 자료구조/알고리즘, STL, 게임 수학, Windows API, 게임 서버 입문으로 이어지는 알찬 커리큘럼으로 게임 프
www.inflearn.com
'자료구조와 알고리즘 > Algorithm' 카테고리의 다른 글
[게임 프로그래머 입문 올인원] STL Algorithms : 퀵정렬 (79강) (0) | 2024.03.28 |
---|---|
분할 정복(Divide and Conquer) 알고리즘 1 : 이진 탐색 (Binary Search) (0) | 2024.02.22 |
[게임 프로그래머 입문 올인원] A* 길찾기 알고리즘 + Maze project (62강) (0) | 2024.02.19 |
[게임 프로그래머 입문 올인원] 다익스트라 (61강) (0) | 2024.02.19 |
[게임 프로그래머 입문 올인원] 그래프와 알고리즘 : DFS, BFS (58, 59강) (0) | 2024.02.17 |