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

长沙大型网站设计公司东莞整站优化推广公司找火速

长沙大型网站设计公司,东莞整站优化推广公司找火速,新闻今日要闻,好品质高端网站设计新感觉建站这道题呢可以按列来累加,就是先算第1列的水的高度然后再加上第2列水的高度……一直加到最后就是能加的水的高度,我想到了这里然后就想第i列的水其实就是第i-1列和i1列中最小的高度减去第i列的高度,但是其实并不是,比如示例中的第5…

 这道题呢可以按列来累加,就是先算第1列的水的高度然后再加上第2列水的高度……一直加到最后就是能加的水的高度,我想到了这里然后就想第i列的水其实就是第i-1列和i+1列中最小的高度减去第i列的高度,但是其实并不是,比如示例中的第5列,他的告诉是0左右两边是1,但水是2,然后看题解了。

第i列的水其实与第i-1列和i+1列的水并没有关系,而是和第i列左边所有柱子中最高的和第i列右边所有柱子中最高的有关

当第i列左右两边的最高柱子中较矮的比第i列要高,那么第i列能装的水就是较矮的高度-第i列的高度。如果左右两边最高的柱子都比第i列的柱子矮的话,那么第i列能装的水就是0。所以算出每一列能装的水然后全部加起来就是能接到的雨水,以下的代码:

class Solution {public int trap(int[] height) {int n = height.length;int ans = 0;for(int i =1;i<n-1;i++){int leftMaxHeight =0;for(int j =i-1;j>=0;j--){if(height[j] > leftMaxHeight)leftMaxHeight=height[j];}int rightMaxHeight =0;for(int k =i+1;k<n;k++){if(height[k] > rightMaxHeight)rightMaxHeight=height[k];}int min = Math.min(rightMaxHeight, leftMaxHeight);ans+= min > height[i] ? min-height[i] : 0;}return ans;}
}

这个算法每次都要找出某一列左边的最高的柱子和右边的最高柱子,就多了一层循环,算法还可以优化,创建一个left_max数组和right_max数组,left_max[i]表示第i列左边的最高的柱子,right_max[i]同理。用动态规划的方法来填充这两个数组。

left_max[i] = Math,max(left_max[i-1] ,height[i-1]);就是说第i列左边最高的柱子是第i-1列左边的最高柱子第i-1列的高度的最大值,right_max[i]同理。以下是代码:

public int trap(int[] height) {int sum = 0;int[] max_left = new int[height.length];int[] max_right = new int[height.length];for (int i = 1; i < height.length - 1; i++) {max_left[i] = Math.max(max_left[i - 1], height[i - 1]);}for (int i = height.length - 2; i >= 0; i--) {max_right[i] = Math.max(max_right[i + 1], height[i + 1]);}for (int i = 1; i < height.length - 1; i++) {int min = Math.min(max_left[i], max_right[i]);if (min > height[i]) {sum = sum + (min - height[i]);}}return sum;
}
http://www.ds6.com.cn/news/87689.html

相关文章:

  • 网站做优化效果怎么样什么是新媒体运营
  • 网站建设要会哪些方面全网seo优化电话
  • 有什么做兼职的好的网站吗seo和sem是什么
  • 动态电商网站怎么做百度推广账号注册流程
  • 一个域名怎么用来做多个网站手机怎么创建自己的网站平台
  • 山西网站建设报价单网络营销策划包括哪些内容
  • 重庆企业模板建站信息seo技术 快速网站排名
  • 西双版纳网站建设开发公司猪八戒网接单平台
  • 天津网站seo策划关键词搜索引擎工具
  • 广州做包包的网站网络营销推广的
  • 网站的价值与网站建设的价格建设优化网站
  • 西安品牌网站建设服务商seo优化标题 关键词
  • 会所网站建设哈尔滨网络优化公司有哪些
  • 网站模板的功能win10优化工具
  • 武汉搭建网站北京搜索排名优化
  • 公司付网站会员费科目怎么做网站推广优化公司
  • 个人网站免费制作外贸推广公司
  • 汽车业务网站开发公司seo搜索引擎优化工程师招聘
  • wordpress服务器搭建aso优化{ }贴吧
  • 前程无忧做简历网站外贸营销网站制作公司
  • 建立网站的英文短语google seo 优化
  • 重庆工信部网站自己创建一个网站需要多少钱
  • 科技公司网站开发论文电子商务平台建设
  • 企业网站页面图片网盘资源共享网站
  • 怎么建投票网站深圳网站seo优化公司
  • 做管理信息的网站网络推广网站的方法
  • 视频网站系统开发深圳关键词快速排名
  • 多城市网站开发中国疫情最新消息
  • 郑州php网站建设seo托管公司
  • 建筑案例的网站有哪些方面上海seo推广服务