반응형
나를 호출한다.
재귀함수를 풀 때는 케이스를 나눠야 한다.
바로 풀 수 있는 경우를 base case
이를 함수로 표현해보자.
===========================
반복문으로 되는 것은 재귀함수로도 됨 (반대로도 가능)
함수가 끝나면 기록해둔 위치(콜스택)로 돌아가고
이 위치 기록을 없앰
함수를 많이 호출하면 콜스택이 계속 쌓여서 기록 공간이 없어져 과부하로 프로그램이 중단됨. 이를 스택오버플로우라고 부름.
(파이썬은 재귀함수 1000개까지만 가능함)
재귀 함수를 이용하면 깔끔한 반복문을 만들 수 있으나
콜스택 문제가 발생할 것 같으면 반복문을 사용하는 것이 좋다.
반응형