
다이나믹 프로그래밍
·
Data Structures & Algorithms
다이나믹 프로그래밍 큰 문제를 작게 나누고, 같은 문제라면 한 번씩만 풀어 문제를 효율적으로 해결하는 알고리즘 기법 - 대표적인 예: 피보나치 수열 피보나치 수열은 다음과 같은 형태의 수열이다. 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ... 점화식: 인접한 항들 사이의 관계식 피보나치 수열의 점화식 프로그래밍에서는 이러한 수열을 배열이나 리스트로 표현할 수 있다. 𝑛번째 피보나치 수를 f(𝑛)라고 할 때 4번째 피보나치 수 f(4)를 구하는 과정은 다음과 같다 피보나치 함수 소스코드 # 피보나치 함수(Fibonacci Function)을 재귀함수로 구현 def fibo(x): if x == 1 or x == 2: return 1 return fibo(x - 1) + fibo(..