模板奉上: 第一种使用STL 代码语言:javascript 代码运行次数:0 运行 AI代码解释 deque<int>q;//滑动窗口 for(int i = 0; i < nums.size(); i++){ while(!q.empty()&&nums[q.back()]<nums[i])//维护队列单调性(递增) q.pop_back(); q.push_back(i);//入队
滑动窗口【模板】 #include<bits/stdc++.h>#define N 1000005using namespace std;int n,k;int a[N];deque<int> q;//使用双端队列int main(){cin>>n>>k;for(int i = 1;i<=n;i++)cin>>a[i];for(int i = 1;i<=n;i++)//求滑动窗口最小值{while(q.size() && q.back()>a[i])q...
滑动窗口【模板】 滑动窗口 /【模板】单调队列 - 洛谷https://www.luogu.com.cn/problem/P1886使用双端队列实现(deque): 手写一个: 总结:单调队列是一种非常有用的数据结构,可以高效地解决需要维护窗口内最值的问题。使用单调队列的时间复杂度为O(n),其中n为输入数组的长度。其实现方式有双向队列和单调栈两种...