동적 계획법 (Dynamic Programming) 동적 계획법(Dynamic Programming, DP)은 복잡한 문제를 더 작은 하위 문제(Subproblem)로 나누어 해결하고, 그 결과를 저장(Memoization/Tabulation)하여 동일한 계산을 반복하지 않음으로써 효율성을 높이는 알고리즘 설계 기법이다. 개요 동적 계획법의 핵심 철학은 "…
검색 결과
"최적 부분 구조"에 대한 검색 결과 (총 4개)
최장 공통 부분 수열 개요 최장통 부분 수열(Longest Subsequence, 이하 LCS)은 개 이상의 문자열(또는 수열)에서 동시에 나타나는 부분 수열(subsequence) 중 가장 긴 것을 찾는 문제입니다. 이 알고리즘은 자연어처리(NLP), 생물정보학, 버전 관리 시스템(예: git diff), 텍스트 비교 도구 등 다양한 분야에서 핵심적으로 …
분지 한정법 (Branch and Bound) 분지 한정법(Branch and Bound)은 조합 최적화 문제(Combinatorial Optimization Problem)를 해결하기 위한 체계적인 탐색 알고리즘입니다. 이 방법은 해 공간(Search Space)을 부분 공간으로 분할(분지, Branching)하고, 각 부분 공간에서 최적해의 하한(또는 …
DP 테이블 요 DP 테이블Dynamic Programming Table)은 동적획법(Dynamic Programming, DP) 구현할 때 사용하는 데이터 구조로, 주로 1차원 또는 2원 배열 형태로 표현된다. DP는 복잡한 문제를 작은 하위 문제로 나누어 해결한 후, 그 결과를 저장하고 재사용함으로써 중복 계산을 피하고 효율적으로 최적해를 도출하는 알고…