Recursive Functions

wooo·2023년 5월 7일
0

재귀함수란?

재귀란 원래의 자리로 되돌아가거나 되돌아온다는 뜻이다.
재귀함수란 어떠한 함수가 있을 때 그 안에서 자기자신을 호출하는 함수를 뜻한다. 마치 반복문을 돌리듯 자기 자신을 끊임없이 부르다가 특정 조건이 되면 빠져나오는 함수를 재귀 함수라고 한다.

재귀함수의 생성과 사용법

function recursiveFunc() {
  ...
  recursiveFunc()
  ...
}

위와 같은 방식으로 재귀함수를 만들 수 있다. 자신과 같은 이름의 함수를 내부에서 실행해 주는 것이다. 내가 만든 함수 내부에서 다시 나를 부른 ㄴ형태이기 때문에 무한히 계속 반복되는 함수가 된다.

따라서 재귀함수를 만들 때에는 반드시 함수를 종료하는 조건을 만들어 주어야 한다. 재귀 함수를 만들 때 가장 주의해야할 부분이다.

function example(count) {
    let sum = 0;

    if(count === 0) return sum
    return example(count-1) +2
}

위의 example 함수는 return 값으로 자기 자신을 불러오며 불러올 때 매개변수인 count를 -1 해주고 결과값을 +2 해준다.

for문, map, while 대신 사용할 때 용이하다.

function WhatIsRecursion_02(count) {
    let sum = 0;

    function recursion(count) {
     if (count===0) {return 0}
      else{
       return recursion(count-1)+2
      }		
    }

    return recursion(count)
}

참고

0개의 댓글