재귀 함수 (Recursion Function)
-
함수를 스스로 호출하는 것
-
어떤 면에서는, 재귀는 루프와 유사
-
무한 반복을 방지하기 위해 반드시 탈출 조건이 있어야 함
대표적인 예 : Factorial
-
5! = 5x4x3x2x1 = 120
반복문
function factorial(n) {
let result = 1;
for (let i = n; i > 0; i--) {
result = result * i;
}
return result;
}
재귀
function factorial(n) {
if (n === 0) {
return 1;
}
return n * factorial(n-1);
}
/*=========================*/
// 결과 값
factorial(1) = 1!
1
factorial(2) = 2!
2
factorial(3) = 3!
6
factorial(4) = 4!
24
factorial(5) = 5!
120
function factorial(n) {
// Base Case
// n이 0이면 재귀를 더 이상 진행하지 않는다
if (n === 0) {
return 1;
}
// Recursive Case
return n * factorial(n-1);
}
'CodeStates > └ JavaScript(Pre)' 카테고리의 다른 글
Closure (0) | 2020.06.26 |
---|---|
Scope (0) | 2020.06.25 |
배열 다루기 (0) | 2020.06.22 |
reduce (0) | 2020.06.20 |
filter (0) | 2020.06.20 |
댓글