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

南京做网站企业b站黄页推广

南京做网站企业,b站黄页推广,深圳网站建设方案维护,线上少儿编程课哪个机构最好接雨水-热题 100?-Lua 中文代码解题第4题 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 1: 输入:height [0,1,0,2,1,0,1,3,2,1,2,1] 输出:6 解释…

接雨水-热题 100?-Lua 中文代码解题第4题

给定 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 * 10^{4}
  • 0 <= height[i] <= 10^{5}

解题思路: 

接雨水问题的解决主要依赖于动态规划的思想。这个问题可以理解为求解在一系列柱子中,每根柱子能够存储多少雨水。

1. 初始化:
   - 创建两个数组 `left_max` 和 `right_max` 分别记录每根柱子左边和右边的最大高度。
   - 对于 `left_max`,初始化时,第一根柱子左边的最大高度就是它自身。

2. 计算左右最大值:
   - 从第二根柱子开始,遍历整个柱子序列,对于每一根柱子,其左侧最大高度是它与前一根柱子中的较大者(因为雨水只能被比它高的柱子拦截)。
   - 同理,对右侧最大高度进行计算,不过由于我们是从右向左遍历,所以需要倒序遍历,初始值设置为最后一个柱子的高度。

3. 计算并累加雨水量:
   - 再次遍历一次柱子序列,对于每一根柱子,它能储存的雨水量等于它的两侧最大高度中的较小值减去它自身的高度。注意,只有当这个差值大于0时,才能储存雨水,否则高度不够无法存储。

4. 返回结果:
   - 遍历完成后,累计的雨水总量即为所求的答案。

通过以上步骤,我们可以有效地避免重复计算,并确保找到每根柱子可以储存的最大雨水量,最终得到所有柱子总共能接住的雨水总量。

中文代码 -- 无注释版
函数 合计(水坑高度)如果 #水坑高度 == 0 即返回 0结束局部 n = #水坑高度局部 左边高度 = {水坑高度[1]}因为 i = 2, n 做左边高度[i] = 数.最大值(左边高度[i - 1], 水坑高度[i])结束局部 右边高度 = {}因为 i = n, 1, -1 做右边高度[i] = 数.最大值(右边高度[i + 1] 或 0, 水坑高度[i])结束局部 接水量 = 0因为 i = 1, n 做接水量 = 接水量 + 数.最小值(左边高度[i], 右边高度[i]) - 水坑高度[i]结束返回 接水量
结束-- 示例用法演示:
-- 给定一个表示柱子高度的数组,调用合计函数计算其容纳雨水总量
接雨水 = {0, 1, 0, 2, 1, 0, 1, 3, 2, 1, 2, 1}
输出(合计(接雨水))
中文代码 -- 带注释的如下:
-- 根据给定高度数组计算容器内可容纳雨水总量
-- @参数 水坑高度 数组,表示每个位置柱子的高度信息
-- @返回 返回一个整数,表示容器能容纳的雨水总量
函数 合计(水坑高度)-- 若高度数组为空,则直接返回0如果 #水坑高度 == 0 即返回 0结束局部 n = #水坑高度-- 初始化并计算每个位置左侧的最大高度局部 左边高度 = {水坑高度[1]}因为 i = 2, n 做左边高度[i] = 数.最大值(左边高度[i - 1], 水坑高度[i])结束-- 计算每个位置右侧的最大高度局部 右边高度 = {}因为 i = n, 1, -1 做右边高度[i] = 数.最大值(右边高度[i + 1] 或 0, 水坑高度[i])结束-- 计算每个位置形成的凹槽可容纳雨水量,并累加至总水量局部 接水量 = 0因为 i = 1, n 做接水量 = 接水量 + 数.最小值(左边高度[i], 右边高度[i]) - 水坑高度[i]结束返回 接水量
结束
这段代码运行后将会输出:6

我就想问这样子做代码,是不是有点入门水平学生,

即可以少做中文注释,大家也能看得懂。

http://www.hkea.cn/news/214777/

相关文章:

  • 网站建设服务费属于哪个大类电商seo搜索优化
  • 12380网站建设情况的报告网络seo首页
  • 个人如何在百度上做广告网站seo什么意思
  • java做网站编程合肥seo快排扣费
  • 做律师网站公司google play下载
  • 网站怎么做详情页北京网站制作建设公司
  • 广告网站模板下载不了东莞排名优化团队
  • 网站建设人员培训纲要河北seo网络推广
  • jsp网站开发实例视频教程各大网站的网址
  • 手机网站设计要素推广竞价
  • 久久医药网seo推广培训费用
  • 网站做301顶级域名需要绑定网站排名掉了怎么恢复
  • wordpress app 源码合肥seo整站优化网站
  • 建立网站基本步骤安仁网络推广
  • 网页建设方案怎么写网站seo优化心得
  • 还没有做网站可以先备案域名吗seo怎么提升关键词的排名
  • 做网站原型图软件优化设计七年级下册语文答案
  • 2023年舆情分析报告seo优化宣传
  • 武汉网站建设 熊掌号最佳磁力引擎吧
  • 教育平台网站开发品牌运营
  • 91人才网赣州招聘网安卓优化大师app下载安装
  • 合肥网页模板建站营业推广策划
  • 网站做301根目录在哪教育培训机构平台
  • 企业做网站域名需要自己申请吗深圳百度推广客服电话多少
  • 备案网站容易被收录公司网站建设费用多少
  • 4s店网站建设方案百度app下载最新版
  • 创建电子商务网站的7个步骤做网站推广需要多少钱
  • DW怎么做电商网站梅花seo 快速排名软件
  • 哪个网站可以查企业信息今日热搜榜官网
  • 做网站有必要注册商标吗河北百度seo关键词