재귀

»

재귀

함수가 자신을 다시 호출하는 구조로 만들어진 함수로써 종료조건이 있어야합니다

종료조건을 정해주지 않으면 무한 반복이 되게됩니다

자기자신인 함수를 호출하는 방식을 재귀 호출이라고합니다

function f(n) {
    if (n <= 1) {
       return 1 // 종료 조건
    }
    return n + f(n-1) // 재귀함수
}
console.log(f(100))
[1,2,3,4]

return 1 + func([2, 3, 4])
					 return = 1 + func([3, 4])
												= 1 + func([4])
															= 1 + 0

재귀의 3가지 중요한 특성

  • 종료 조건

    종료 조건은 재귀의 안전장치입니다

  • 기반 조건(Base case)

    어쩌면 재귀의 종료조건과 비슷합니다 하지만 종료 조건은 나쁜 데이터를 잡아낸다는 것이 다릅니다

  • 재귀

    함수가 자기 자신을 호출하는 것을 의미합니다