📍 다이나믹 프로그래밍(동적 계획법) '한 번 계산한 문제는 다시 계산하지 않도록 한다'는 알고리즘으로,메모리 공간을 적절히 사용하여 수행시간 효율성을 비약적으로 향상시키는 방법이다. 이미 계산된 결과는 별도의 메모리 영역에 저장하여 다시 계산하지 않도록 한다.구현은 일반적으로 두 가지 방식(탑다운, 보텀업)으로 구성된다. 💥 다이나믹 프로그래밍의 '동적' 의미는, 자료구조에서 사용하는 동적 할당(Dynamic Allocation):프로그램이 실행되는 도중에 실행에 필요한 메모리를 할당하는 기법과는 다르다. 별다른 의미 없이 사용된 단어이다. 📍 다이나믹 프로그래밍의 조건 1. 최적 부분 구조(Optimal Substructure):큰 문제를 작은 문제로 나눌 수 있으며, 작은 문제의 답..