더북(TheBook)

5.3.1 코드 변환하기

예시 문제에서는 다음과 같이 재귀가 정의되었습니다.

▼ 표 5-1 예시 문제의 재귀 정의

상태

(n, m): nm

종료 조건

(n, 0) = 1

(0, m) = 1

(1, m) = 1

점화식

(n, m) = n * (n, m - 1)

이를 이용하여 재귀 호출을 구현해봅시다.

 

부분 문제 나타내기

재귀 호출 구현에서 하나의 부분 문제는 하나의 메서드가 담당합니다. 예시 문제에서는 상태 (n, m)을 나타내는 부분 문제를 풀어야 합니다. 이를 위한 power() 메서드는 다음과 같이 작성할 수 있습니다.

private int power(int n, int m) {
    // 종료 조건, 점화식 구현하기
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.