7cf3c028e2f206a26d81f6e647877c64

피보나치 수열 5번째 값을 얻기 위한 방법인데

F(num) 라는 이름의 재귀함수로 구현 (num= 1or2 일때 return 1;)


F(5) 를 구하려면



F(2)  <- 조건문에 의해 1반환

F(3) = F(2) + F(1) ->  F(3)가 F(2) 를 호출해 스택에 쌓임
F(4) = F(3) + F(2) ->  F(4)가 F(3) 를 호출해 스택에 쌓임

F(5) = F(4) + F(3) ->  F(5)가 F(4) 를 호출해 스택에 쌓임

main F(5) -> F(5)가 스택에 쌓임


                           --> 레지스터(1)

F(3) = F(2) + F(1)    <- F(2)에 레지스터 값 
F(4) = F(3) + F(2)
F(5) = F(4) + F(3)
main F(5)


F(1) <- 조건문에 의해 1반환

F(3) = 1 + F(1)    -> F(1) 가 스택에 쌓임
F(4) = F(3) + F(2)
F(5) = F(4) + F(3)
main F(5)



이런식으로 계속 반복 맞음?