1. 재귀를 통한 문제 해결
1.1 재귀의 개념과 구조
- 재귀는 문제를 동일한 형태의 작은 문제로 나누어 해결하는 방식입니다
- 재귀 함수는 자기 자신을 호출하여 문제를 해결합니다
1.2 재귀의 핵심 요소
- 재귀의 핵심 요소는 종료 조건(Base Case)과 재귀 호출(Recursive Case)입니다
1.2.1 종료 조건 예제
def factorial(n):
# 종료 조건
if n <= 1:
return 1
# 재귀 호출
return n * factorial(n-1)
- 재귀 호출이 끝나는 시점을 명확히 정의해야 합니다
- 종료 조건이 없으면 무한 재귀에 빠질 수 있습니다
1.2.2 재귀 호출 특징
- 문제를 더 작은 단위로 나누어 자신을 다시 호출합니다
- 각 호출마다 문제의 크기가 감소해야 합니다