面接準備/アルゴリズム7/ダイナミックプランニングと分割征服
4950 ワード
ダイナミックプランニングと分割
1.定義
アルゴリズム
2.異同
3.動的計画アルゴリズムの理解
プログラミング練習
フィボナッチ数列:nを入力し、以下のように計算します.
nを入力すると、結果値がフィボナッチ数列で出力されます.
함수를 fibonacci 라고 하면, fibonacci(0):0 fibonacci(1):1 fibonacci(2):1 fibonacci(3):2 fibonacci(4):3 fibonacci(5):5 fibonacci(6):8 fibonacci(7):13 fibonacci(8):21 fibonacci(9):34
再帰呼び出しの使用
def fibo(num):
if num <= 1:
return num
return fibo(num - 1) + fibo(num - 2)
fibo(4)
3
ダイナミックプランニングの活用
def fibo_dp(num):
cache = [ 0 for index in range(num + 1)]
cache[0] = 0
cache[1] = 1
for index in range(2, num + 1):
cache[index] = cache[index - 1] + cache[index - 2]
return cache[num]
fibo(10)
55
実行コードの表示と理解:グーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグーグー
分割征服アルゴリズムの例は,単独の章で紹介したマージソートと高速ソートによって理解される.
Reference
この問題について(面接準備/アルゴリズム7/ダイナミックプランニングと分割征服), 我々は、より多くの情報をここで見つけました https://velog.io/@bbkyoo/면접준비알고리즘7동적계획법과-분할정복テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol