<CodeStates>재귀함수

한주영·2023년 3월 14일
0

📖오늘의학습

재귀함수를 배웟다 단어는 많이들어봤지만 제대로 공부하고
문제를 푼건 오늘이 거의처음인것같다 자바를 공부할때도 직관적인코드의 흐름만 파악했지 재귀를 호출하여 문제를 풀었던 적이 거의없었다..ㅠㅠ🤣
페어분과 연습문제를 풀면서..다시한번 나의 부족함을깨닫게된다..🥲🥲
재귀함수는 익숙치않아서 개념설명위주로 정리 후 개인적으로문제를 더풀면서 익숙해지려고 한다!!!

재귀함수란?

함수가 직접 또는 간접적으로 자신을 호출하는 프로세스

재귀함수의 장점

불필요하게 여러개의 반복문을 사용하지않기때문에 코드가 간결,수정이 용이
변수를 여러개 사용할 필요가없음

단점

반복문과 달리 코드의 흐름을 직관적으로 파악하기가 어려움
메서드호출시 지역변수,매개변수,반환값등을 모두 process stack에 저장
메모리를 많이 사용하게 됨.

재귀함수로 문제 해결

  1. 문제를 좀 더 작게쪼갠다
  2. 1번과 같은방식으로 , 문제가 더는 작아지지않을때까지, 가장작은단위로쪼갠다
  3. 가장 작은단위의 문제를 해결함으로써 전체문제를 해결한다

재귀함수의 동작 원리

1.재귀 함수의 입력값,출력값 정하기
2.문제를 쪼개고 경우의 수 나누기
3.단순한 문제 해결하기
4.복잡한 문제 해결하기
5.코드 구현하기

profile
백엔드개발자가 되고싶은 코린이:)

0개의 댓글