动态规划的基本概念


动态规划(DP)

使用条件

  • 最优化原理 : 具有最优子结构的性质,一个问题的最优解只取决于子问题的最优解
  • 无后效性 :某阶段的状态一旦确定,则此后的演变过程不再受此前各状态和决策的影响

使用步骤

  • 划分阶段
  • 确定状态和状态变量
  • 确定决策并写出状态转移方程
  • 寻找边界条件
  • 设计并实现程序

两种方式

  • 递推 :从前往后
  • 递归(记忆化搜索):从后往前

不适合用动态规划的情况

  • 不能划分阶段的题
  • 不符合最优化原理的题
  • 不具备无后效性原则的题

线性DP

  • 线性动态规划的目标函数为特定变量的线性函数。
  • 约束是这些变量的线性不等式或等式。
  • 目的是求目标函数的最大值或最小值。

区间DP

  • 先算出小区间的最优解,再去得到大区间的最优解。
  • 用状态f[i][j]表示区间[i,j]的最优解。
  • f[i][j]可以由[i,j]的子区间 ([i,k],[k,j]) 得到。

文章作者: AkiiLucky
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 AkiiLucky !
评论
  目录