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

手机免费网站建设深圳品牌策划公司

手机免费网站建设,深圳品牌策划公司,河源疫情最新情况,做电影网站有哪些题目 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 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…

题目

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

示例 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 个单位的雨水(蓝色部分表示雨水)。

示例 2:

输入:height = [4,2,0,3,2,5]
输出:9

提示:

n == height.length
1 <= n <= 2 * 104
0 <= height[i] <= 105

思路

这个问题可以使用双指针和动态规划的方法来解决,以下是使用双指针的解题思路:

  1. 我们可以通过遍历一遍数组来找出每个位置的左边最大高度和右边最大高度。

  2. 创建两个数组,left_maxright_max,分别记录每个位置左边和右边的最大高度。

  3. 对于left_max数组,从左到右遍历数组,left_max[i]表示位置i左边的最大高度。

  4. 对于right_max数组,从右到左遍历数组,right_max[i]表示位置i右边的最大高度。

  5. 接下来,再次遍历数组,对于每个位置,计算其能接到的雨水量。雨水量可以通过取左右最大高度的较小值,减去当前位置的高度,来计算。

  6. 将每个位置的雨水量相加,就得到了总的雨水量。

这种解决方案的时间复杂度是O(n),其中n是数组的长度。

代码

object Solution {def trap(height: Array[Int]): Int = {val n = height.lengthif (n == 0) return 0var left = 0var right = n - 1var leftMax = 0var rightMax = 0var trappedWater = 0while (left < right) {if (height(left) < height(right)) {if (height(left) > leftMax) {leftMax = height(left)} else {trappedWater += leftMax - height(left)}left += 1} else {if (height(right) > rightMax) {rightMax = height(right)} else {trappedWater += rightMax - height(right)}right -= 1}}trappedWater}def main(args: Array[String]): Unit = {val height1 = Array(0, 1, 0, 2, 1, 0, 1, 3, 2, 1, 2, 1)println(trap(height1))  // 输出 6val height2 = Array(4, 2, 0, 3, 2, 5)println(trap(height2))  // 输出 9}
}
http://www.yidumall.com/news/66143.html

相关文章:

  • 安徽优化网站淘宝网店怎么运营起来
  • csgo翻硬币网站开发google关键词挖掘工具
  • 静态网站有哪些自己做一个网站
  • 家具品牌网站百度百家号
  • 自动优化网站建设百度推广怎么登录
  • 学习型网站空间2022最近热点事件及评述
  • 常州做网站咨询武汉seo收费
  • 关于做网站的总结优化设计七年级下册语文答案
  • 苏州网站建设系统电话媒体:多地新增感染趋势回落
  • wordpress代码片段技术教程优化搜索引擎整站
  • 付网站开发费计入什么科目专业软文平台
  • erp供应链管理系统包括哪些灵宝seo公司
  • 怎么做整人网站指数网站
  • 傻瓜式网站制作可口可乐营销策划方案
  • 网站开发的资料设备免费建站的网站哪个好
  • 批发网站有哪些平台百度网盘怎么找片
  • 个人免费网站建设网站优化网络推广seo
  • 手机做网站过程网站seo策划方案
  • 自己做网站需要什么软件seo优化技术培训
  • 网站需求定制表单站长数据
  • 各手机厂商定制版appseo网站内容优化
  • 影视传媒广告公司网站模板营销外包团队怎么收费
  • muse做的网站怎么样制作公司网页多少钱
  • 网站建设和数据库维护广告免费发布信息
  • 在阿里云做视频网站需要什么北京it培训机构哪家好
  • 网站建设书籍推荐2345网址导航用户中心
  • 幼儿园微信网站怎么做一网信息一个简单便捷的新闻网站
  • 做静态网站有什么用产品软文撰写
  • 百合怎么doi怎么做网站百度知道一下首页
  • 南京百度搜索排名优化百度搜索名字排名优化