Loading

动态规划笔记

简单定义

动态规划,英文:Dynamic Programming,简称DP。

顾名思义,就是动态推导每一个状态,每一个状态都是由上一个状态推导而来的,这刚好区别于跟动态规划很像的贪心算法,贪心是通过每一步的局部最优解来达到整体最优解,不同状态之间没有联系。

题目分类

动态规划类问题大致可以分为:动规基础,背包问题,打家劫舍,股票问题,子序列问题。

还有一些比较难的比如区间dp,概率dp,这些在专业算法竞赛里也算很难的题目,应对大厂笔试面试的话,掌握上面这些问题就足够了。

文章结尾会放上大佬整理的每一类问题对应的具体题目。

解题步骤

动规五部曲:

  1. 确定dp数组的定义以及下标的含义
  2. 递推公式
  3. dp数组的初始化
  4. 遍历顺序
  5. 举例推导dp数组

image

posted @ 2021-08-12 15:59  泠枫Jun  阅读(36)  评论(0编辑  收藏  举报