퀴즈 / 알고리즘 / 문제

알고리즘에서 '동적 프로그래밍(Dynamic Programming)'의 메모이제이션(Memoization)과 타뷸레이션(Tabulation)의 차이점으로 올바른 것은?

어려움 freeCodeCamp
보기 및 정답
A 메모이제이션은 하향식(Top-Down) 재귀 방식이고, 타뷸레이션은 상향식(Bottom-Up) 반복문 방식이다
B 메모이제이션은 모든 경우에 항상 타뷸레이션보다 빠른 실행 속도를 보장하며, 메모리도 적게 사용한다
C 타뷸레이션은 재귀 호출을 기반으로 하향식(Top-Down)으로 동작하고, 메모이제이션은 반복문을 사용하는 방식이다
D 메모이제이션과 타뷸레이션은 완전히 동일한 접근 방식이며, 구현 방법이나 성능에도 아무런 차이가 없다

해설

메모이제이션(Top-Down)은 재귀적으로 문제를 풀되 이미 계산한 결과를 캐시에 저장하여 재사용합니다. 타뷸레이션(Bottom-Up)은 가장 작은 부분 문제부터 반복문으로 테이블을 채워나갑니다. 메모이제이션은 필요한 부분만 계산하고, 타뷸레이션은 재귀 오버헤드가 없는 장점이 있습니다.

코딩, 제대로 배우고 싶다면?

개념 확인은 퀴즈로, 실력은 실전 프로젝트로.
투더제이 코딩클래스에서 시작하세요.

정규반 살펴보기
START THE LOOP · CHOOSE

시장과 사람의 답을 봤다면,
다음 결과물의 구조를 고릅니다.

한 번의 결과에 기대지 않고 다시 만들 수 있도록, 문제 발견부터 제작·배포·수익화까지 이어지는 전체 흐름을 익혀보세요.

TTJ CLASS에서 다음 구조 고르기
처리 중...