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

做机械设备内销网站有哪些百度怎么推广自己的信息

做机械设备内销网站有哪些,百度怎么推广自己的信息,百度如何才能搜索到你的网站,做网站的设计软件题目 给定 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.tj-hxxt.cn/news/88539.html

相关文章:

  • 下列关于网站开发中网站上传手机如何制作网站教程
  • 浙江建设部网站识图
  • asp做动态网站百度问问首页
  • 做网站笔记本seo指的是搜索引擎营销
  • 把网站做成appseo公司排行
  • 广州专业网站建设公司推广产品最好的方式
  • wordpress视屏站大数据查询
  • 网站建设找博网上海百度推广公司排名
  • 网站建设合同首付多少钱西安网站制作价格
  • 揭阳做网站广东疫情最新资讯
  • 网站制作的文章免费推广工具
  • 做网站工作室百度信息流推广是什么意思
  • 销售方案网站网络销售挣钱吗
  • wordpress建站优缺点南昌网站优化公司
  • 网站域名空间租用合同自助建站系统哪个好用
  • 大型企业网站制作百度论坛
  • 保山网站建设优化广东疫情最新数据
  • 海口制作网站软件上热门最火标题
  • WordPress 建电商网站seo工程师是什么职业
  • 安卓做网站如何自己免费制作网站
  • 欢迎访问中国建设银行网站独立站优化
  • 空白网站怎么建抖音关键词优化
  • 中国做网站正邦seo sem什么意思
  • 设计素材网站酷p郑州网络运营培训
  • wordpress便宜的付费主题网站权重优化
  • 开一个网站建设公司怎么建网站卖东西
  • 电商网站建设济南建网站爱站网关键词长尾挖掘
  • 潍坊响应式网站建设一篇好的营销软文
  • 深圳做网站哪家搜索引擎营销的分类
  • 上海企业查询官网网站seo优化软件