일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- java
- 아이템 28
- Docker Layer
- 아이템 22
- 아이템 25
- criteriaquery
- Docker cache
- Spring Batch
- 아이템 27
- 아이템 23
- 이펙티브자바
- 자바 ORM 표준 JPA 프로그래밍
- 아이템29
- 아이템30
- 아이템 24
- JPQL
- Immutable Object
- ddd
- JPA
- 도메인 주도 개발 시작하기
- Domain Driven Design
- 아이템31
- Github Actions Cache
- 아이템 26
- GitHub Actions
- cicd
- 최범균
- jdbc
- 일ㅊ
- 객체지향 쿼리 언어
Archives
- Today
- Total
목록동적계획법 (1)
코딩은 마라톤
동적 계획법 (Dynamic Programming)과 분할 정복 (Divide and Conquer)
1. 정의 동적계획법 (DP) 입력 크기가 작은 부분 문제들을 해결한 후, 해당 부분 문제의 해를 활용해서, 보다 큰 크기의 부분 문제를 해결 상향식 접근법으로, 가장 최하위 해답을 구한 후, 이를 저장하고, 해당 결과값을 이용해서 상위 문제를 풀어가는 방식 Memoization 기법을 사용함 Memoization : 프로그램 실행 시 이전 계산 값을 저장하여 다시 계산하지 않도록 하여 전체 실행 속도를 빠르게 하는 기술 분할 정복 문제를 나눌 수 없을 때까지 나누어서 각각을 풀면서 다시 합병하여 문제의 답을 얻는 알고리즘 하향식 접근법으로, 상위의 해답을 구하기 위해, 아래로 내려가면서 하위의 해답을 구하는 방식 일반적으로 재귀함수로 구현한다. 문제를 잘게 쪼갤 때, 부분 문제는 서로 중복되지 않는다...
CS/알고리즘
2023. 12. 24. 18:47