摘要: 单调队列是一种严格单调的队列,可以单调递增,也可以单调递减。队首位置保存的是最优解,第二个位置保存的是次优解,ect。。。单调队列可以有两个操作:1、插入一个新的元素,该元素从队尾开始向队首进行搜索,找到合适的位置插入之,如果该位置原本有元素,则替换它。2、在过程中从队首删除不符合当前要求的元素。单调队列实现起来可简单,可复杂。简单的一个数组,一个head,一个tail指针就搞定。复杂的用双向链表实现。用处:1、保存最优解,次优解,ect。2、利用单调队列对dp方程进行优化,可将O(n)复杂度降至O(1)。也就是说,将原本会超时的N维dp降优化至N-1维,以求通过。这也是我想记录的重点是不是任 阅读全文
posted @ 2012-07-11 11:25 Accept 阅读(13907) 评论(4) 推荐(8) 编辑