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

龙华新区城市建设局网站揭阳新站seo方案

龙华新区城市建设局网站,揭阳新站seo方案,vue网站开发注意事项,试玩网页游戏一、单调栈问题 单调栈问题通常是在一维数组中寻找任一个元素的右边或者左边第一个比自己大或者小的元素的位置。 1、每日温度 739 这题的目的是对于当天,找到未来温度升高的那一天,也就是当前元素的右边第一个比自己大的元素。所以我们需要维护一个单…

一、单调栈问题

单调栈问题通常是在一维数组中寻找任一个元素的右边或者左边第一个比自己大或者小的元素的位置。

1、每日温度 739

这题的目的是对于当天,找到未来温度升高的那一天,也就是当前元素的右边第一个比自己大的元素。所以我们需要维护一个单调栈,栈内元素非严格单调递减。

class Solution {
public:vector<int> dailyTemperatures(vector<int>& temperatures) {stack<int>  q;vector<int> ans(temperatures.size());for(int i=0; i<temperatures.size(); ++i){while(!q.empty() && temperatures[q.top()] < temperatures[i]){ans[q.top()] = i - q.top();q.pop();}q.push(i);}return ans;}
};

2、下一个更大元素 I 496

一种思路是采用哈希表记录nums2(全集)元素的下一个更大的元素,寻找下一个更大的元素的过程就可以使用单调栈来进行辅助。代码如下:

class Solution {
public:vector<int> nextGreaterElement(vector<int>& nums1, vector<int>& nums2) {unordered_map<int, int> mp;stack<int> q;for(int num : nums2){while(!q.empty() && q.top() < num){mp[q.top()] = num;q.pop();}q.push(num);}while(!q.empty()){mp[q.top()] = -1;q.pop();}vector<int> ans(nums1.size());for(int i=0; i<nums1.size(); ++i)ans[i] = mp[nums1[i]];return ans;}
};

还有一种就是记录nums1(子集)的索引,在循环nums2中采用单调栈,找到元素的下一个更大的元素。

3、下一个更大元素II 503

这题数组可以循环,所以可以理解为有两个数组拼接在一起,求第一个数组的下一个更大元素。一个技巧是在一个数组里遍历两次,这样可以不用将代码扩容,更加简洁方便。

class Solution {
public:vector<int> nextGreaterElements(vector<int>& nums) {int n = nums.size();vector<int> ans(n, -1);stack<int> q;for(int i=0; i<2*n; ++i){while(!q.empty() && nums[q.top()] < nums[i%n]){ans[q.top()] = nums[i%n];q.pop();}q.push(i%n);}return ans;}
};
http://www.dtcms.com/wzjs/357754.html

相关文章:

  • 广州购网站建设刷关键词排名系统
  • 南昌网站设计公司郑州网
  • 网站建设开发方式包括哪些搜关键词网站
  • 安阳360网站推广工具舆情分析
  • 服务器怎么发布网站网络营销课程设计
  • wordpress播放上传视频seo软件哪个好
  • 怎样快速仿做网站怎么做网站链接
  • 东莞高端做网站公司千万不要做手游推广员
  • 正规做网站公司学企业管理培训班
  • MIUI官方网站开发版百度关键词搜索指数
  • 自己如何做网站推广企业网站的网络营销功能
  • 网站内链建设锚文字建设网络营销渠道有哪几种
  • 校园淘宝店网站开发在线seo关键词排名优化
  • 系统的网站建设教程市场推广方案怎么做
  • 织梦网站seo信息发布网站有哪些
  • 网站建设公司怎样拓展网站业务网站seo推广多少钱
  • 网站网络推广如何制作一个网页链接
  • 如何建设类似大众点评网站学生网页设计模板
  • 免费空间测试网站营销网站的建造步骤
  • 洛阳做网站的公司seo做的比较好的公司
  • 广东网站建设费用如何打百度人工电话
  • 网站建设提成湖南优化公司
  • 玉林做网站优化推广seo搜索优化推广
  • 测网站打开的速度的网址如何在各大网站发布信息
  • 高校门户网站建设问题网站推广方式有哪些
  • 国家企业信用查询官网广州网站运营专业乐云seo
  • wordpress类开源网站定向推广
  • 龙岗附近做网站公司2024很有可能再次封城吗
  • 加盟型网站建设宁波seo软件
  • 青岛做模板网站的公司seo网站的优化方案