2.1 재귀함수가 뭔가요?

yeonseong Jo·2023년 5월 10일
0

SEB_BE_45

목록 보기
22/47
post-thumbnail

섹션1이 끝나고
오늘 부터 알고리즘에 관한 부분인 섹션2가 시작되었다.
알고리즘의 시작은 역시 재귀함수..

재귀 함수

재귀함수 하니 위 짤이 바로 생각이 났는데,
라이브 세션에서도 역시 이 예시를 들어 시작하셨었다.

이전까지만 해도 알고리즘은 물론
재귀함수 조차 제대로 공부하거나 배운적은 없어
관련한 문제를 풀 때 뭔가 주먹구구식으로 풀었는데,
오늘 재귀함수를 배우면서 어떻게 풀어나가야 할 지
조금은 이해가 간거 같다.


base case

base case는 재귀 함수의 시작 부분인데,
오늘 재귀 함수의 동작 원리에 대해 이해를 하면서
표현 하기는 쉽지만, 가장 중요한 부분이라고 생각했다.

재귀적(?)으로 생각을 하자면
재귀 함수를 호출하는 부분이 아니라,
제일 처음 return을 하는 부분 부터
원하는 값이 만들어지기 시작하기 때문이다.


recursive case

recursive case는 base case에서
return된 값으로 부터
다음 값을 쌓는 부분이다.

재귀함수를 설계할 때에는
recursive case 부분을 설계하는 것에
시간이 많이 들거 같다.
(basecase가 중요하다고 생각했지만)


회고

페어 프로그래밍을 하면서
나는 어찌저찌 문제를 다 풀긴 했지만,
페어분에게 설명을 드리는 과정에서
이해시키기가 엄청 어려웠다.

재귀함수에 대한 이해력이 떨어져서 그런 부분이 크겠지만,
다른 사람에게 설명을 한다는 것이 엄청 어려운 거 같다.

profile
뒤(back)끝(end)있는 개발자

0개의 댓글