動態規劃:前一個問題影響這後一步的決策。
目的:求解最優
基本思路:有多種解法,每種解法都有對應的值,想找到最優的解。從子問題得到原問題的解。講所有的子問題的答案存放在一張表中。
基本結構:
基本模型:確定狀態轉移方程
適用條件:最優化原理,無後效性
最優化原理:子決策總是最優的。
無後效性:當前狀態對未來有影響,但是之前狀態對未來沒有影響。
子問題的重疊性:空間換時間,指數型變成多項式。由於存儲狀態,導致空間複雜度會大於時間複雜度。
動態規劃:前一個問題影響這後一步的決策。
目的:求解最優
基本思路:有多種解法,每種解法都有對應的值,想找到最優的解。從子問題得到原問題的解。講所有的子問題的答案存放在一張表中。
基本結構:
基本模型:確定狀態轉移方程
適用條件:最優化原理,無後效性
最優化原理:子決策總是最優的。
無後效性:當前狀態對未來有影響,但是之前狀態對未來沒有影響。
子問題的重疊性:空間換時間,指數型變成多項式。由於存儲狀態,導致空間複雜度會大於時間複雜度。
什麼是堆:堆是一種經過排序的完全二叉樹,其中任一非終端節點的數據值均不大於(或不小於)其左孩子和右孩子節點的值; 首先,堆分爲大根堆(最大堆)和小根堆(最小堆)二種; 小根堆滿足: