다이나믹 프로그래밍 "한 번 계산한 문제는 다시 계산하지 않도록 하는 알고리즘"
·
알고리즘 공부/다이나믹 프로그래밍
다이나믹 프로그래밍은 메모리 공간을 약간 더 사용하면 더 연산속도를 비약족으로 증가시킬수 있는 방법 여기서 다이나믹은 '프로그램이 실행되는 도중에' 라는 의미이다. 예를 들어 자료구조에서 동적할당은 프로그램 실행 중에 프로그램 실행에 필요한 메모리를 할당하는 기법이다. 다이나믹 프로그래밍의 기본적인 2가지 방식 1) 탑다운 2) 보텀업 그리고 다이나믹 프로그래밍에서 자주 사용되는 메모이제이션 기법 다이나믹 프로그래밍의 대표적인 예로는 피보나치 수열이 있다. 프로그래밍에서는 수열 자체가 여러 개의 수가 규칙에 따라서 배열된 형태를 나타낼 때 수열을 배열이나 리스트로 표현할 수있다. 피보나치 수열의 예이다 # 피보나치 함수(Fibonacci Function)을 재귀함수로 구현 def fibo(x): if x..