컴퓨터컴퓨터
컴퓨터
/자료구조와 알고리즘/
재귀(recursion)

재귀(recursion)

함수가 자기 자신을 부르는 것이 재귀이다. 스스로를 부르다니... 무슨 말이야!
 
 
재귀란 이런 것이다. 아무런 변화가 없어 보이지만, 저 링크는 지금 이 문서를 가리키고 있다.
 

자기 자신 부르기

 

꼬리 재귀

꼬리 재귀 최적화(Tail Recursion)
코드가 짧아져 가독성을 높일 수 있다는 장점이 있지만, 스택 오버 플로우를 일으킬 수 있는 엄청난 위험성도 내재하고 있습니다. 함수를 호출할 때 함수의 입력 값(매개변수), 리턴값, 그리고 리턴됐을 때 돌아갈 위치값 등을 스택에 저장합니다. 재귀함수를 사용하면 함수가 끝나지 않은 채 연속적으로 함수를 호출하므로 스택에 메모리가 쌓이게 됩니다.
꼬리 재귀 최적화(Tail Recursion)꼬리 재귀 최적화(Tail Recursion)
https://bozeury.tistory.com/entry/꼬리-재귀-최적화Tail-Recursion
꼬리 재귀 최적화(Tail Recursion)꼬리 재귀 최적화(Tail Recursion)
꼬리 재귀 최적화(Tail Recursion)
 

관련 자료

8. 재귀(recursion)
[번역] 자바스크립트의 재귀, PTC, TCO, STC 에 대한 모든 것 – 東Woo. KIM