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

网站建设与管理课程介绍榆林网络公司建设网站

网站建设与管理课程介绍,榆林网络公司建设网站,江苏大汉建设实业集团网站,企业局域网题目来源&#xff1a;https://leetcode.cn/problems/trapping-rain-water/description/ C题解1&#xff1a;双指针 按列算&#xff0c;一列一列的求雨水面积。使用双指针是记录当前列左右侧的最大元素。 class Solution { public:int trap(vector<int>& height) {in…

题目来源:https://leetcode.cn/problems/trapping-rain-water/description/

C++题解1:双指针

按列算,一列一列的求雨水面积。使用双指针是记录当前列左右侧的最大元素。

class Solution {
public:int trap(vector<int>& height) {int result = 0;int len = height.size();vector<int> leh(len, 0), rih(len, 0);leh[0] = 0;rih[len-1] = 0;for(int i = 0; i < len; i++) {if(i + 1 < len) {leh[i+1] = max(leh[i], height[i]);}if(len-i-2 >= 0){rih[len-i-2] = max(rih[len-i-1], height[len-i-1]);}}for(int i = 0; i < len; i++) {int tmp = min(leh[i], rih[i]);if(tmp > height[i]) result = result + tmp - height[i];}return result;}
};

C++题解2:单调栈(注意:栈存放元素索引就可以直接找到元素值)

按行算,横向算法。用单调栈可以求单前列右侧大的元素值。

当height[i]比st.top()所在元素值大时,如果st弹出一个元素后不是空栈,那么说明一定有凹槽(能装雨水)。因为栈里存放的是索引,所以可以求出横向有多长(即上面箭头的长度);再比较一下height[i]与新的height[st.top()]的长短,可以求出纵向有多长;相乘即可求出箭头所在位置蓝色面积。

class Solution {
public:int trap(vector<int>& height) {int len = height.size();if(len <= 2) return 0;stack<int> st;int result = 0;for(int i = 0; i < len; i++) {while(!st.empty() && height[i] > height[st.top()]) {int tmp = st.top();st.pop();if(!st.empty()) {result += (min(height[i], height[st.top()]) - height[tmp]) * (i - st.top() - 1);}}st.push(i);}return result;}
};

http://www.yayakq.cn/news/268730/

相关文章:

  • 资源网站后台系统WordPress adsen
  • 网站里面的超链接怎么做深圳网站建设深圳企业网站建设
  • 网站建设个一般需要花费多少钱个人网页html模板完整代码
  • 凤阳网站建设哪家好全网营销推广方案
  • 非凡网站建设 新三板最新wordpress新建首页
  • 网站特效wordpress手机主题漂亮
  • 可以做基因通路分析的网站wordpress口语主题
  • wordpress 网站建设在线代码生成器
  • 中国建设银行云浮分行网站推广策略用英语怎么说
  • 家用宽带怎样做网站服务器重庆市建筑协会信息网
  • 同性做视频网站辽宁网站建站
  • 大连自助建站做APP必须要有网站么
  • 烟台高新区规划国土建设局网站wordpress阅读数随机
  • 贵州省建设厅官方网站考证国外设计网站dooor
  • 网站建设倒计时摄影网站设计代码
  • phpstudy如何建设网站网站如何做关键词
  • 做网站预付款 怎么做账wordpress完整中文免费主题下载
  • 做视频网站把视频放在哪里找小团队兼职做网站
  • 如何建网站商城海南省住房公积金管理局官网
  • 国网交流建设公司网站重庆专业做网站公司
  • 搭建一个网站的步骤家庭nas可以做网站服务器
  • 阿里云网站建设素材python免费教程视频
  • 如何做花店网站服装设计公司取名
  • 外汇交易平台网站建设百度推广费用一天多少钱
  • 做网站怎样调用支付宝接口增城网站建设推广
  • 深圳优化网站公司哪家好东莞南城做网站
  • 京东门户网站怎么做沈阳网络推广
  • 常见网站漏洞郑州专业做淘宝网站推广
  • 扬州企业做网站小程序代理哪家好
  • 个人可以做电视台网站吗网页设计制作成品