当前位置: 首页 > news >正文

php程序员网站开发建设app推广接单渠道

php程序员网站开发建设,app推广接单渠道,部门网站建设管理,微信php网站开发流程链接: 剑指 Offer 59 - I. 滑动窗口的最大值 题意: 一个lg长度的数组,一个长度k的滑动窗口,求所有滑动窗口中的最大值 解: 优先队列存储存储下标,数字大的优先,每次判断最大的值是否在范围…

链接:

剑指 Offer 59 - I. 滑动窗口的最大值

题意:

一个lg长度的数组,一个长度k的滑动窗口,求所有滑动窗口中的最大值

解:

优先队列存储存储下标,数字大的优先,每次判断最大的值是否在范围内即可

进阶思想:双端队列

思想核心:当l<r 且 nums[l]<nums[r]的情况下使用nums[r]替换nums[l]

队列存储下标,由于正序遍历,每次加入双端队列的数字一定大于队列内的数,假设我们用front端存储目前最大数字下标,那么应该从back端开始比较,移除所有nums[old]<nums[now],再加入自身now

剩下的数值从front到back依照nums[f]>nums[b] 且 f<b,这时候判断front的下标是否符合范围即可

例如存在(index,nums[index])1,10 2,3 那么3,9就可以替换2,3 变成 1,10 3,9;当1的下标不在范围内了就抛弃1,10

实际代码:

#include<bits/stdc++.h>
using namespace std;
struct CMP//比较功能函数类 
{CMP(const vector<int>& r):ref(r) {};bool operator() (const int& lhs,const int& rhs){return ref[lhs]<ref[rhs];}const vector<int>& ref;
};
vector<int> maxSlidingWindow(vector<int>& nums, int k)
{vector<int>ans;int lg=nums.size();if(!lg) return ans;//priority_queue<int,vector<int>,CMP>p_q(static_cast<CMP>(nums));priority_queue<int,vector<int>,CMP>p_q((CMP(nums)));for(int i=0;i<lg;i++){p_q.push(i);if(i>=k-1) {while(p_q.top()<(i-k+1))p_q.pop();ans.push_back(nums[p_q.top()]);}}return ans;
}
int main()
{vector<int> nums;int num;int k;cin>>k;while(cin>>num) nums.push_back(num);vector<int>ans=maxSlidingWindow(nums,k);for(auto &a:ans) cout<<a<<endl;return 0;
}

进阶:

vector<int> maxSlidingWindow(vector<int>& nums, int k)
{vector<int>ans;deque<int>idxs;int lg=nums.size();if(!lg) return ans;for(int i=0;i<lg;i++){while(!idxs.empty() && nums[i]>nums[idxs.back()])idxs.pop_back();idxs.push_back(i);if(i>=k-1){while(!idxs.empty() && idxs.front()<i-k+1) idxs.pop_front();ans.push_back(nums[idxs.front()]);}}return ans;
}

限制:

  • 你可以假设 k 总是有效的,在输入数组 不为空 的情况下,1 ≤ k ≤ nums.length
http://www.hkea.cn/news/676799/

相关文章:

  • 网站开发要注意安全性公司优化是什么意思
  • 河北邢台做移动网站开通网站需要多少钱
  • 天河网站建设多少钱淘宝关键词优化
  • 中型网站 收益关键词排名查询官网
  • 网站的弹窗是怎么做的谈谈对seo的理解
  • 广州网站制作费用宁波seo外包哪个品牌好
  • 河南高端网站建设广州网站优化页面
  • 企业可以备案几个网站南昌seo实用技巧
  • 网站用什么布局专业网站建设公司
  • 公司网站怎么做分录it培训机构学费一般多少
  • 如何将自己做的网页做成网站绍兴seo
  • 河南省住房与城乡建设厅网站首页怎么做属于自己的网站
  • 移动端网站开发推广效果最好的平台
  • 用二级页面做网站的源代码自助建站系统破解版
  • 网站上怎么做动画广告推广策略包括哪些内容
  • 广州网站优化公司大亚湾发布
  • 广州网站开发招聘百度经验悬赏令
  • 吴江建设局网站郑州粒米seo外包
  • 建设工程合同纠纷与劳务合同纠纷seo培训教程视频
  • 找网站建设公司哪家最好沈阳市网站
  • sh域名做的好的网站什么是营销
  • 网站平台怎么做推广一站式网络推广服务
  • 百度对新网站排名问题兰州seo快速优化报价
  • 网站建设常用代码湘潭网络推广
  • 做网站上传图片一直错误好用搜索引擎排名
  • 钟祥网站建设网络推广的含义
  • 新闻类网站源码青岛官网seo
  • 网站优化哪里可以做百度营销客户端
  • 常德建设局网站北京优化网站方法
  • 用ip做网站优化手机流畅度的软件