动态规划:前一个问题影响这后一步的决策。
目的:求解最优
基本思路:有多种解法,每种解法都有对应的值,想找到最优的解。从子问题得到原问题的解。讲所有的子问题的答案存放在一张表中。
基本结构:
基本模型:确定状态转移方程
适用条件:最优化原理,无后效性
最优化原理:子决策总是最优的。
无后效性:当前状态对未来有影响,但是之前状态对未来没有影响。
子问题的重叠性:空间换时间,指数型变成多项式。由于存储状态,导致空间复杂度会大于时间复杂度。
动态规划:前一个问题影响这后一步的决策。
目的:求解最优
基本思路:有多种解法,每种解法都有对应的值,想找到最优的解。从子问题得到原问题的解。讲所有的子问题的答案存放在一张表中。
基本结构:
基本模型:确定状态转移方程
适用条件:最优化原理,无后效性
最优化原理:子决策总是最优的。
无后效性:当前状态对未来有影响,但是之前状态对未来没有影响。
子问题的重叠性:空间换时间,指数型变成多项式。由于存储状态,导致空间复杂度会大于时间复杂度。
什麼是堆:堆是一種經過排序的完全二叉樹,其中任一非終端節點的數據值均不大於(或不小於)其左孩子和右孩子節點的值; 首先,堆分爲大根堆(最大堆)和小根堆(最小堆)二種; 小根堆滿足: