-
[Swift] 재귀 알고리즘Coding Test 2023. 11. 28. 00:51
Algorithm
Recursion
재귀는 문제를 더 작은 부분으로 나누고, 각 부분의 문제를 해결한 후 결과를 조합해 전체 문제의 답을 찾는 해결 방법이다.
재귀 알고리즘의 법칙
- 반드시 종료 조건이 있어야 한다.
- 반드시 자기 자신의 상태를 변경하면서 종료 조건에 가까워져야 한다.
- 반드시 자기 자신을 재귀적으로 호출해야한다.
종료 조건
재귀 함수에서 재귀 함수가 자기 자신을 끝없이 호출하지 않도록 알고리즘을 빠져나가는 조건
재귀 알고리즘 특징
- 반복에 비해 코드가 간결함
- 스택에 데이터 저장 -> 메모리 소비가 많을 수 있음
import Foundation func recursionFunction(input:Int) -> String { if input != 0 { print("\(input)") return recursionFunction(input: input - 1 ) } else { print("End") return "1" } } recursionFunction(input: 10)
참고도서 - 나의 첫 알고리즘 + 자료구조 with 파이썬 (한빛미디어)
'Coding Test' 카테고리의 다른 글
정렬 알고리즘 (1) 2023.12.03 탐색 알고리즘 (1) 2023.12.03 정렬 알고리즘: 버블정렬, 선택정렬 (1) 2023.11.19 [Swift] 크기가 작은 부분 문자열 (0) 2023.11.15 [Swift] 소수 판별 (1) 2023.11.14