剑指offer:滑动窗口的最大值
滑动窗口的最大值
http://www.nowcoder.com/questionTerminal/1624bc35a45c42c0bc17d17fa0cba788
class Solution {
public:
vector<int> maxInWindows(const vector<int>& nums, unsigned int k)
{
vector<int>res;
deque<int>q;
int ans=100010;
for(int i = 0; i < nums.size(); i++){
if(!q.empty() && i-q.front() >= k)
q.pop_front();
while(!q.empty()&&nums[q.back()]<nums[i])
q.pop_back();
q.push_back(i);
if(i >= k-1){
res.push_back(nums[q.front()]);
ans=min(ans,nums[q.front()]);
}
}
return res;
cout<<ans;
}
};

