tailrec
-
[Kotlin] tailrec(꼬리 재귀)란IT Study/Android 2024. 2. 3. 16:46
1. 꼬리 재귀란? 꼬리 재귀(Tail Recursion)는 함수의 마지막 연산이 재귀 호출임을 의미합니다. 일반적인 재귀 호출과는 다르게, 꼬리 재귀는 함수가 자신을 호출함과 동시에 종료 됩니다. 이러한 특성 때문에, 꼬리 재귀는 컴파일러나 인터프리터에 의해 루프로 변환될 수 있습니다. 2. 꼬리 재귀의 기본 사용 방법 Kotlin에서는 tailrec 키워드를 사용해 꼬리 재귀 함수를 작성할 수 있습니다. 팩토리얼 계산을 예를 들어보죠. (1) 기본 재귀 함수 (꼬리 재귀 함수 ❌) fun factorial(n: Int): Long { return if (n 4 * factorial(3) ---> 3 * factorial(2) ----> 2 * factorial(1) -----> 1 factorial(..