⭐ 재귀 recursion()
📌 장점
- 코드간결,수정용이
- 변수를 여러개 사용할 필요 X
📌 단점
- 코드의 흐름이 비직관적
- 메모리 과다사용
- 메소드 종료후 컨텍스트 스위칭 비용 발생
📌 사용조건
- 문제의 크기를 점점 작은 단위로 쪼개야함
- 재귀 호출이 종료되는 시점이 존재해야함
Base Case : 간단한 결과 반환 (탈출조건)
Recursive Case : 자기 자신 호출
📌 수학적 정의
- n = 0일 경우, n! = 1
- n> 0일 경우, n! = n * (n-1)!
'Data Architect > Data Structure' 카테고리의 다른 글
자료구조의 특징 (0) | 2023.02.05 |
---|---|
Time Complexity & Greedy & Brute Force (0) | 2022.09.27 |
DFS & BFS (2) | 2022.09.26 |
Tree & Graph (2) | 2022.09.23 |
JSON_Recursive (0) | 2022.09.21 |