TIL(Today I Learned)

Day.12 재귀함수 그리고 졸업 프로젝트

지팡구 2022. 11. 15. 02:31

오늘은 학부 마지막 종착역이자 엔드포인트인 졸업작품 프로젝트 발표회가 있었다. 그래서 공부에 많이 집중할 수 없었는데, 뭔가 아쉬우면서도 최종 피드백을 듣고 엔드포인트를 돌려고하니 4년의 시간이 주마등처럼 지나가면서 묵었던 체중이 내려가는 것 같았다..

 

직접 서비스를 기획하고 만들고, 피칭 준비까지 팀장의 무게는 나름 잘 견뎠다고 생각했다...

 

본론으로 넘어가서  금일은 많은 공부를 못했다......


오늘 공부한 내용은 재귀함수에 대해 공부했다. 알고리즘의 단골 문제....

 

알고리즘 강의 2주차 8에 있는 재귀함수를 간단하게 공부하고 백준 문제로 이 것을 적용해서 풀어보았다. 

 

우선 재귀함수가 무엇이나? 재귀는 자기를 호출하는 프로세스를 가지는 함수인데, 이 알고리즘을 이용해 다양한 문제를 해결 할  수 있는데 반드시! 루프에 대해 탈출을 정의해줘야 한다

 

대표적인 재귀함수 문제는 팩토리얼!

 

그럼 팩토리얼이 무엇인데??

 팩토리얼은 주어진 n 까지의 정수를 곱한 것을 의미한다( 1 ~ n  까지 )

ex) 5! => 5 * 4 * 3 * 2 * 1 

 

그럼 이 함수를 어떻게 콜해서  내가 원하는 계산을 할 수 있을까?

( 종이를 꺼내서 조금만 논리적으로 생각해보면 쉽다..)

 

팩토리얼 함수 구현

 

계속 자기를 호출하면서 루프를 돌게되고, 0일떄 리턴이 1, 루프를 탈출한다. 

내일은 강의에 나오는 재귀함수를 이용해 입력된 문자열을 입력받고, 입력된 문자열이 재귀 호출을 통해 좌 우측이 같은지 비교하는 함수를 만들어 봐야겠다