목록재귀 (2)
Bunny Code

저번 포스팅에서 재귀 함수는 계산을 반복하기 때문에 문제점이 많다고 했습니다. 이번 포스팅에서는 이로 인해 생기는 문제점인 메모화 기술을 알아보겠습니다. 먼저, 재귀 함수도 복습할 겸, 생기는 문제점을 실감하기 위해 재귀 함수를 이용해 피보나치 수열을 작성하는 코드를 살펴볼게요! 위의 코드 처럼 입력하면 굉장히 잘 짜여진 코드라고 생각할 수 있지만 저 코드로 피보나치 수열의 40 번째 항을 계산해보세요. 코드가 바로 40번째 항을 출력해주나요?? 아닙니다!! (컴퓨터에 따라 다르겠지만 저는 한 3~4초정도 걸렸어요.) 더 높은 항을 구하려고 할 수록 걸리는 시간은 기하급수적으로 늘어나게 됩니다.(아까 언급하기도 했지만 계산을 많이 반복하기 때문) 그렇다면 코드를 작성해서, 얼마나 반복하는지도 알아보겠습니..

이번 포스팅에서는 return 이라는 키워드에 대해 다뤄보겠습니다. return 이 의미하는 바는 '함수를 실행했던 위치로 돌아가라', '함수를 여기서 끝내라' 라는 뜻입니다. (매개변수 포스팅 부터 갑자기 어려워지는 듯한 느낌이 심한데 저도 어려워서 이해하느라 힘들었어요..ㅠㅠ) 위의 입력 화면을 보시면 return 이라는 키워드가 아래의 print("버즈밴드는 못생겼어") 의 출력을 막아줍니다. print("버즈밴드는 멋있어") 까지만 출력해주고 함수를 끝내줍니다. 만약 return 뒤에 자료를 입력하면, 자료를 가지고 return 하게 됩니다. return 뒤에 써 준 100000 라는 숫자를 가지고 return 한 것을 확인할 수 있습니다. 일반적으로 함수를 만들 때 값을 만들어 리턴하는 형태로 ..