250x250
Notice
Recent Posts
Recent Comments
Link
코린이의 기술 블로그
재귀 함수 본문
재귀 함수 ? 함수가 직접적 또는 간접적으로 자신을 호출하는 프로세스를 재귀함수라고 합니다.
자기 자신을 호출하는 함수 / 끝을 맺어주지 않으면 무한 루프에 빠질수 있다.
그러므로 종료 Case가 존재해야 합니다.
밑의 설명을 보면 반복문의 형식을 잘 기억해서 함수를 봐야하는 것으로 보입니다.
반복문 문제를 더 풀고 제귀 함수 정리의 정리가 더 효율적으로 보입니다:)
재귀 Vs. 반복
모든 재귀 호출은 반복문으로 변경 가능하며 그 역으로도 성립한다. 모든 반복문은 재귀 호출로도 변경 가능하다.
- 재귀 함수
- 장점 : 복잡한 알고리즘을 사람이 보기에 단순하고 알기 쉽게 표현 가능
- 단점 : 함수 호출에 따른 오버헤드가 있음
재귀 알고리즘 설계
뒤에서부터 빠져나오면서, 혹은 더 깊이 들어가고 차례로 빠져나오면서 뭘 하고 싶을 때.
- 적어도 하나 이상의 순환되지 않는 종료 case가 있어야 한다.
- 모든 case는 종료 case로 수렴해야 한다.
- 암시적 매개변수를 명시적 매개변수로 바꿔라
- 재귀 호출을 위해 매개변수를 좀 더 일반화 하란 얘기
출처 : https://ansohxxn.github.io/algorithm%20lesson%201/chapter1-1/
728x90
'Java Web' 카테고리의 다른 글
REST API 설계 (0) | 2022.01.05 |
---|---|
REST의 정의 (0) | 2022.01.03 |
입력 유효성 검증 (0) | 2021.12.11 |
스프링 폼 요소 - 2 (0) | 2021.12.08 |
스프링 폼 요소 - 1 (0) | 2021.12.07 |
Comments