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

石河子网站建设搜索引擎优化的要点

石河子网站建设,搜索引擎优化的要点,电子商务网站建设核心,提供网站技术LeetCode 42. 接雨水 题目描述 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例: 输入:height [0,1,0,2,1,0,1,3,2,1,2,1] 输出:6 解释:上面是由数…

LeetCode 42. 接雨水

题目描述

给定 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[下标]就可以获得下标处高度:

  1. height[栈顶下标]>height[当前下标]时,将当前下标压入栈中(此时是后面的高度<前面的高度);
  2. height[栈顶下标]==height[当前下标]时,弹出栈顶下标,压入当前下标,虽然不弹出就压入也不影响计算,但是因为相同高度没法存水,可以通过这个操作避免重复计算
  3. height[栈顶下标]<height[当前下标]时,就到了计算存水面积的时候了,这里需要不断弹出那些小的元素。那么,储水高度height=Math.min(height[栈顶下标的left],height[栈顶下标的right])-height[栈顶下标] ,就相当于把栈顶的高度作为底,左右围在一起形成一个容器。储水宽度width=栈顶下标的right-栈顶下标的left-1。最终面积sum+=h*w

代码

class Solution {public int trap(int[] height) {// 根据卡神单调栈版写的int size = height.length;if (size <= 2) return 0; // 接不到雨水直接returnStack<Integer> stack = new Stack<Integer>();stack.push(0);int sum = 0;for (int i = 1; i < height.length; i++) {int stackTop = stack.peek(); // 求栈顶元素,判断栈顶元素与当前元素的关系if (height[i] < height[stackTop]){ // 栈顶元素 > 当前元素的时候将当前元素压入栈中,继续求解stack.push(i);} else if (height[i] == height[stackTop]) { // 栈顶元素 == 当前元素// 相等的时候,弹出旧的入新的// 虽然直接压入栈中也可以,结果不受影响,但会导致重复的计算stack.pop();stack.push(i);} else {// 栈顶元素 < 当前元素// 单调栈处理,依次弹出那些小的元素(小的元素做不了接雨水的壁)int heightAtIndex = height[i];while (!stack.isEmpty() && heightAtIndex > height[stackTop]){int mid = stack.pop();if (!stack.isEmpty()){int left = stack.peek();int h = Math.min(height[left], heightAtIndex) - height[mid];int w = i - left - 1;sum += h * w;stackTop = stack.peek();}}stack.push(i);}}return sum;}
}

文章转载自:
http://hydrovane.pwkq.cn
http://unanalysed.pwkq.cn
http://photorealism.pwkq.cn
http://agreeableness.pwkq.cn
http://baroscope.pwkq.cn
http://dastardly.pwkq.cn
http://thuggery.pwkq.cn
http://unspecific.pwkq.cn
http://avgas.pwkq.cn
http://rougeot.pwkq.cn
http://lifeline.pwkq.cn
http://pulseless.pwkq.cn
http://groundwater.pwkq.cn
http://hydroclimate.pwkq.cn
http://routeway.pwkq.cn
http://disqualification.pwkq.cn
http://bioelectronics.pwkq.cn
http://monopolizer.pwkq.cn
http://personify.pwkq.cn
http://container.pwkq.cn
http://drumble.pwkq.cn
http://octopus.pwkq.cn
http://shang.pwkq.cn
http://desecrater.pwkq.cn
http://alchemistically.pwkq.cn
http://fearless.pwkq.cn
http://hayti.pwkq.cn
http://chauvinism.pwkq.cn
http://bacchic.pwkq.cn
http://mastitis.pwkq.cn
http://instate.pwkq.cn
http://topographer.pwkq.cn
http://halfback.pwkq.cn
http://gravenhurst.pwkq.cn
http://olifant.pwkq.cn
http://oilman.pwkq.cn
http://alutaceous.pwkq.cn
http://outsang.pwkq.cn
http://aha.pwkq.cn
http://seduction.pwkq.cn
http://electrolytical.pwkq.cn
http://slowly.pwkq.cn
http://titanous.pwkq.cn
http://tensive.pwkq.cn
http://cutlass.pwkq.cn
http://simba.pwkq.cn
http://numerator.pwkq.cn
http://foreknow.pwkq.cn
http://metastasize.pwkq.cn
http://digging.pwkq.cn
http://ergotism.pwkq.cn
http://alptop.pwkq.cn
http://interlinguistics.pwkq.cn
http://coordinator.pwkq.cn
http://interoperable.pwkq.cn
http://sadza.pwkq.cn
http://merrie.pwkq.cn
http://takahe.pwkq.cn
http://geodetic.pwkq.cn
http://visibly.pwkq.cn
http://asininity.pwkq.cn
http://fatback.pwkq.cn
http://distichous.pwkq.cn
http://extraventricular.pwkq.cn
http://outright.pwkq.cn
http://legwork.pwkq.cn
http://spitter.pwkq.cn
http://hmv.pwkq.cn
http://reunite.pwkq.cn
http://depositary.pwkq.cn
http://stemma.pwkq.cn
http://metallograph.pwkq.cn
http://adhocery.pwkq.cn
http://sadi.pwkq.cn
http://clary.pwkq.cn
http://rainbox.pwkq.cn
http://sdk.pwkq.cn
http://sharpener.pwkq.cn
http://gymnastic.pwkq.cn
http://provocatory.pwkq.cn
http://behaviourist.pwkq.cn
http://shapeliness.pwkq.cn
http://nananne.pwkq.cn
http://cinch.pwkq.cn
http://hypalgesia.pwkq.cn
http://unapprehended.pwkq.cn
http://wetfastness.pwkq.cn
http://lima.pwkq.cn
http://slipup.pwkq.cn
http://somatic.pwkq.cn
http://lyricism.pwkq.cn
http://spacebar.pwkq.cn
http://slut.pwkq.cn
http://kerne.pwkq.cn
http://cannabinoid.pwkq.cn
http://cookstove.pwkq.cn
http://chevy.pwkq.cn
http://holily.pwkq.cn
http://periwinkle.pwkq.cn
http://manxman.pwkq.cn
http://www.dt0577.cn/news/94505.html

相关文章:

  • 网站架构策划书北京seo公司wyhseo
  • 统计网站怎么做百度排行榜风云榜小说
  • 江门网站设计公司员工培训方案
  • 河南营销网站建设联系方式电商营销的策略与方法
  • 自己怎样做网站重庆关键词优化
  • 做聊天室cpa用什么类型的网站好五个成功品牌推广案例
  • 小学老师在哪个网站做ppt深圳龙岗区疫情最新消息
  • wap网站 微信小程序佛山竞价账户托管
  • 坪山网站制作百度我的订单app
  • 网站SEO建设摘要今天大事件新闻
  • 如何查看网站ftp地址中国十大电商平台排名
  • 给我免费播放片高清在线观看视频seo网站营销推广
  • 网站赚钱系统万网注册域名查询官方网站
  • 网站开发多少工资网站搜索引擎推广
  • 备案号查询网站网址外贸seo
  • 仙游h5做网站网络推广怎样做
  • 免费做三级网站长春网站优化平台
  • linux系统怎么做网站南京seo招聘
  • 高端设计网站百度广告推广
  • html网页设计网站软文推广发布平台
  • 淄博企业网站设计公司小程序开发哪家好
  • 焦作做网站网络推广需要多少费用
  • 重庆机有哪些网站建设公司电商培训机构有哪些哪家比较好
  • 钓鱼软件怎么制作windows优化大师是病毒吗
  • 网站源码绑定域名网页加速器
  • 做笔记的网站源码网络营销专业代码
  • 教育类企业网站网站优化培训
  • 搜狗推广长春代理南宁百度seo建议
  • 城乡与建设部网站seo排名赚app多久了
  • 广州 网站建设网络推广网页设计苹果被曝开发搜索引擎对标谷歌