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

公司网站无法收录wordpress区块链模板

公司网站无法收录,wordpress区块链模板,可以生成静态网站源码,电子商务网站建设题库题目 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 : 输入:height [0,1,0,2,1,0,1,3,2,1,2,1] 输出:6 解释:上面是由数组 [0,1,0,2,1,0,1,3,2,…

题目

给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。
请添加图片描述

示例 :

输入:height = [0,1,0,2,1,0,1,3,2,1,2,1]
输出:6
解释:上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图。
在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。 

思路:

从题目中我们可以知道:只有凹陷的地方才可以存储雨水,那么高度一定是先减后增,所以当我们遍历到这个位置时,前面减的地方(即凹陷的地方)一定会存储雨水,这时我们将凹陷处出栈就可以计算它能存储的雨水量了。
因此我们需要设计一个单调递减栈:维护一个单调栈,单调栈存储的是下标,满足从栈底到栈顶的下表对应的数组height中的元素递减。栈顶的元素就是凹槽的最低点
此外单调栈还有一个需要注意的地方:弹出栈顶后判断栈是否为空,因为当栈为空时,说明左边不存在最大值,无法存储雨水。

Code:

class Solution {
public:int trap(vector<int>& height) {if(height.size() <= 1){return 0;}stack<int>st;int sum=0;st.push(0);for(int i=1 ; i < height.size() ; i++){while(!st.empty() && height[i] > height[st.top()]){int vis = st.top();st.pop();//其实不需要特判栈顶元素一直相等(即凹槽最低处高度相同)的情况//因为每次计算雨水的高度都是计算的//min(凹槽的左侧高度,当前非递减点的高度) 减去 凹槽的高度//因此当凹槽连续的高度相同时只有凹槽最左侧的才会计算出有效值其余都是0if(!st.empty()){int l = i - st.top() -1;int h = min(height[i] , height[st.top()]) - height[vis];sum += l*h;}}st.push(i);}return sum;}
};
http://www.yayakq.cn/news/554141/

相关文章:

  • 李宁网站建设计划书网站建设的公司联系方式
  • 网站推广句子传奇手游在线玩网页游戏
  • qt 可以做网站吗西安app定制开发公司
  • 市民服务中心网站建设网站突然搜不到了
  • 律师在哪个网站做宁波网站推广人
  • 外汇申报在哪个网站上做建网站书籍
  • 网站怎样才能在百度被搜索到wordpress怎么添加友链
  • 番禺制作网站平台怎样做网站排名优化
  • 新沂建设网站网站建设需要哪些工作室
  • 建永久网站深圳app开发公司排名前十
  • 制作网站学什么软件手机网站页面尺寸大小
  • 网站建设与管理卷子爱奇艺推广联盟
  • 申请永久网站空间网络营销的渠道
  • 帝国cms影视网站模板公司网站手机版设计
  • mediwiki 做网站百度推广登录地址
  • 深圳网站seo教程seo短视频保密路线
  • 网站建设步和客户沟通山西住房与城乡建设部网站
  • 西安谁家的集团门户网站建设比较好公众号运营一年多少钱
  • 北京网站排名优化如何在网站搜关键字
  • 网站平台设计团队网站制作价格服务
  • 成都网站建设与网站制作公司logo设计费用一般多少钱
  • 福州建设银行官网招聘网站东营网站建设服务电话
  • 国外做电商网站有哪些wordpress 下拉框链接
  • 廊坊网站排名优化公司哪家好江苏网站建设哪家有
  • 潍坊制作网站wordpress侧边小工具栏
  • 自动采集更新的网站wordpress上海seo关键字推广
  • 西青网站建设app定制制作价格
  • 热门的网站模板下载装饰公司网站开发
  • 做软件跟做网站哪个难做传销网站的程序员犯法吗
  • 网站建设需求范本山东富泰建设工程有限公司网站