当前位置:网站首页>每日一题-盛最多水的容器-0716
每日一题-盛最多水的容器-0716
2022-08-05 05:17:00 【菜鸡程序媛】
题目
给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。
找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。
返回容器可以储存的最大水量。
思路
- 一个下标从左开始走,另一个下标从右开始走。对比两边柱子的高度,因为装水,所以较矮的一边是容器的高度。
- 当前能装的最大体积,就是min(height[left], height[right])*(right-left),用过的一边就需要向前进,再找当前的最大体积。
- 同时需要一个变量,不断的去更新这个容器能装水的最大值。res = Math.max(res, min(height[left], height[right])*(right-left))
代码
public int maxArea(int[] height) {
if(height == null || height.length == 0)
return 0;
int res = 0;
int left = 0, right = height.length - 1;
// 不断的迭代容器可以盛水的最大值
while(left < right){
res = height[left] > height[right] ? Math.max(res, (right - left) * height[right --]) :
Math.max(res, (right - left) * height[left ++]);
}
return res;
}
边栏推荐
- 【UiPath2022+C#】UiPath控制流程概述
- [Database and SQL study notes] 10. (T-SQL language) functions, stored procedures, triggers
- 读论文 - Unpaired Portrait Drawing Generation via Asymmetric Cycle Mapping
- 常见的 PoE 错误和解决方案
- 电子产品量产工具(1)- 显示系统实现
- You should write like this
- 手把手教你搭建小程序
- 1008 数组元素循环右移问题 (20 分)
- 七、请求处理——Map、Model类型参数处理原理
- C语言—三子棋的实现
猜你喜欢
随机推荐
网络ID,广播地址,掩码位数计算
【ts】typescript高阶:模版字面量类型
栈的应用——力扣 20.有效的括号
栈区中越界可能造成的死循环可能
关于使用QML的MediaPlayer实现视频和音频的播放时遇到的一些坑
【ts】typescript高阶:typeof使用
The University of Göttingen proposed CLIPSeg, a model that can perform three segmentation tasks at the same time
PoE视频监控解决方案
网工必用神器:网络排查工具MTR
MySQL主从复制—有手就能学会的MySQL集群搭建教程
将一句话的单词进行倒置(C语言纯代码)
6k+ star,面向小白的深度学习代码库!一行代码实现所有Attention机制!
深度学习系列(一)简介、线性回归与成本函数
亲身实感十多年的面试官面试的题目
【UiPath2022+C#】UiPath Switch
AIDL detailed explanation
【ts】typescript高阶:分布式条件类型
IT系统运行维护方法及策略
电子产品量产工具(3)- 文字系统实现
CVPR 2020 - 频谱正则化








![[Database and SQL study notes] 10. (T-SQL language) functions, stored procedures, triggers](/img/b9/06b90160c962a25a3cc44731afb6dc.png)
