본문 바로가기
갬발자의 프로그래밍/Javascript

재귀함수

by 코라제이 2020. 1. 10.

자기 자신을 호출하는 함수를 재귀 함수라고 한다.

 

가장 유명한 팩토리얼 재귀함수

function factorial(n){
    if(n <= 1) return 1;
    return factorial(n-1)*n
}
console.log(factorial(3)); //6

재귀 함수를 정의할 땐 2가지 주의점이 있다.

1. 재귀는 유한해야 한다.

2. 너무 많이 호출 시 메모리 부담이 많으며 스택오버플로우가 된다. 

 

몇 가지 예를 더 살펴보자

하노이의 탑

function hanoi(n, a, b, c){
    if(n < 1) return ;
    hanoi(n-1, a, c, b);
    console.log(a + '를' +c+"쪽으로 이동");
    hanoi(n-1, b, a, c);
}

 

'갬발자의 프로그래밍 > Javascript' 카테고리의 다른 글

유용팁  (0) 2020.03.26
closure(클로저)  (0) 2020.01.13
배열  (0) 2020.01.09
객체  (0) 2020.01.08
템플릿과 symbol 알아보기  (0) 2020.01.05

댓글