신입 개발자 기술면접 질문 정리 - 알고리즘
coco3o
💡 동적 계획법(DP, Dynamic Programming)에 대해 설명해주세요. 주어진 문제를 풀기 위해, 문제를 여러 개의 하위 문제로 나누어 푸는 방법을 말합니다. 동적 계획법에서는 어떤 부분 문제가 다른 문제들을 해결하는데 사용될 수 있어, 답을 여러 번 계산하는 대신 한 번만 계산하고 그 결과를 재활용하는 메모이제이션(Memoization)기법으로 속도를 향상시킬 수 있습니다. ※ 메모이제이션 : 동일한 계산을 반복해야 할 때, 이전에 계산한 값을 재사용함으로써 동일한 계산의 반복 수행을 제거하여 프로그램 실행 속도를 빠르게 하는 기술 💡 동적 계획법(DP, Dynamic Programming)이 갖는 2가지 조건은 무엇인가요? 1. 중복되는 부분(작은) 문제 중복되는 부분 문제는 나눠진 부분 ..