DP는 메모
# 메모이제이션을 위한 딕셔너리를 전역 변수로 선언합니다.
# 이 딕셔너리는 계산된 피보나치 수열의 값을 저장하는데 사용됩니다.
fib_cache = {0: 0, 1: 1} # 첫 번째와 두 번째 피보나치 수는 0과 1로 초기화합니다.
def fibonacci(n):
# fib_cache는 이 함수 바깥에서 선언된 전역 변수입니다.
# 따라서 이를 함수 내에서 변경하려면 global 키워드를 사용해야 합니다.
global fib_cache
if n in fib_cache:
return fib_cache[n]
else:
fib_cache[n] = fibonacci(n-1) + fibonacci(n-2)
return fib_cache[n]
print(fibonacci(10)) # 55
'''
43강
혼자힘으로 풀어보기
'''
DP와 메모이제이션에 대해 매우 잘 설명해주셔서 쉽게 이해할 수 있었습니다. 피보나치 수열 구현 예제도 매우 도움이 되었어요. 감사합니다!