ダイナミックプログラミングよりもいつメモを取るのですか?
これらはどちらも同じ時間と空間の複雑さを持っているようです。
親指を優先するのはどういうのでしょうか?サブ問題を解決する
-1
A
答えて
1
Memoizationは、ダイナミックプログラミングで使用される技術であり、別のエンティティではありません。時間/空間の複雑さはアルゴリズムと実装に依存します。
Dynamic programmingは、通常、ジョブ内の共通のサブタスクを認識する戦略です。サブタスクを複数回実行する代わりに、実行サイクル以外のシステムリソースを使用して、後で使用するために実行結果を取得します。
通常、これは計算結果を格納する単純な問題であり、計算の労力が重複しないようにします。ほとんどの場合、これにはパラメータ値でインデックス付けされた機能結果の格納が含まれます。これはメモです。トップダウンとボトムアップ:より詳細に
...DPは、2つの基本的な種類があります。ボトムアップの方法は、ベースケースから始まり、要求された結果まで動作します。これは、単純な反復ループと中間結果を格納する配列で実装されることがよくあります。
トップダウン方式はメモです。これにより、元の要求がより小さな問題に壊れ、それぞれの問題が再発します。各サブ問題を解決するので、同じ結果を必要とする他のブランチが使用する結果を格納します。
関連する問題
- 1. 問題を解決する
- 2. JSON問題解決
- 3. hadoop未解決の問題を解決する
- 4. 問題をクロスブラウザで解決する(フロート)
- 5. 困惑の問題を解決する
- 6. Cakephp:クッキーの問題を解決する
- 7. Javaでコーデック問題を解決する
- 8. int + stringで問題を解決する
- 9. OSDの問題を解決する
- 10. クロムズームの問題を解決する
- 11. ボタンスタイルの問題を解決する
- 12. 問題を解決するC#WPF
- 13. Jqueryディープコピーの問題を解決する
- 14. ASPプリコンパイルの問題を解決する
- 15. アセンブラが問題を解決する
- 16. PopUpWindow問題を解決する
- 17. httpリファラーの問題を解決する
- 18. Cygwin:問題を解決する
- 19. DSLセットアッププロジェクトの問題を解決する
- 20. Pythonスクリプトの問題を解決する
- 21. HTMLレイアウトの問題を解決する
- 22. Delphiアプリケーション解決の問題
- 23. JFrameの解決の問題
- 24. SDL解決の問題
- 25. cURL - 解決の問題
- 26. c#autofac解決の問題
- 27. Javaアップキャストスコープ解決の問題
- 28. JXL解決#VALUE問題
- 29. デスクトップ上で問題なくモバイルデバイスで問題を解決する
- 30. 問題ID "toomanyconfigs"と "missingInclude:CPPCheckの問題を解決する方法