单调队列是指在任意时刻,队列中的元素都是单调的(递增或递减),同时他又具有双端队列的部分性质(允许从队尾删除元素)。 在这里,有一道经典的例题:滑动窗口求最值 题目描述:在一个长度为n的整数序列上有一个长度为k的滑动窗口,求滑动窗口内的最(大/小)值。 解释:就是在一个序列上对于每个长度为k的区间, ...
分类:
其他好文 时间:
2018-07-27 14:34:13
阅读次数:
148
1. 问题描述 给定一个整数数组和一个大小为k的滑动窗口,滑动窗口每次从左到右移动一个数字,返回每次滑动窗口中的最大值。
2. 方法与思路 Method 1:最朴素的解法就是将窗口在数组上进行滑动,每滑动一次求一下窗口的最值。时间复杂度O(nk)O(nk)。
Method 2:还有就是使用平衡二叉树。
I. 取出数组前kk个元素,构建平衡二叉树。
II....