[未完成][知识点]动态规划优化初步

1、前言

  这将是本时期的最后一篇知识点,讲解动态规划的优化算法。

 

2、概念

   动态规划众所周知,在很多情况下时间复杂度是很容易判断的,因为其主体就是for循环。局限于设计状态和写出状态转移方程显然是不够的,有时候数据过大可能需要我们对其进行一定的优化。下面就是几种比较典型的优化方式。

3、单调队列

  单调队列,望文生义,就是指队列中的元素是单调的。如:{a1,a2,a3,a4……an}满足a1<=a2<=a3……<=an,a序列便是单调递增序列。同理递减队列也是存在的。

  单调队列的出现可以简化问题,队首元素便是最大(小)值,这样,选取最大(小)值的复杂度便为O(1),由于队列的性质,每个元素入队一次,出队一次,维护队列的复杂度均摊下来便是O(1)。

4、斜率优化

 

5、总结

原文地址:https://www.cnblogs.com/jinkun113/p/4758912.html