[c] 재귀 함수
재귀 함수는 스스로를 호출하는 함수입니다. 이러한 함수는 문제를 작은 조각으로 쪼개어 해결할 때 유용하며, 코드의 간결성과 가독성을 높일 수 있습니다.
특징
- 잘못 구현된 경우 무한 루프에 빠질 수 있으므로 종료 조건을 명확히 정의해야 합니다.
- 스택을 사용하므로 재귀 호출이 너무 많이 일어나면 스택 오버플로우가 발생할 수 있습니다.
- 주로 알고리즘 문제나 트리/그래프 탐색 등에 활용됩니다.
예시: 팩토리얼 계산
def factorial(n):
if n == 1:
return 1
else:
return n * factorial(n-1)