class Solution {
public int maxArea(int[] height) {
int ans = 0;
int left = 0;
int right = height.length - 1;
while (left < right) {
ans = Math.max(ans, getArea(height, left, right));
if (height[left] < height[right]) {
left++;
} else {
right--;
}
}
return ans;
}
private int getArea(int[] nums, int left, int right) {
return (right - left) * Math.min(nums[left], nums[right]);
}
}
力扣11.盛水最多的容器
听风客12024-09-03 13:20
相关推荐
王老师青少年编程44 分钟前
csp信奥赛C++高频考点专项训练之贪心算法 --【哈夫曼贪心】:合并果子叼烟扛炮1 小时前
C++第二讲:类和对象(上)天疆说1 小时前
【哈密顿力学】深入解读航天器交会最优控制中的Hamilton函数许彰午2 小时前
CacheSQL(二):主从复制——OpLog 环形缓冲区与故障自动恢复wuweijianlove2 小时前
关于算法设计中的代价函数优化与约束求解的技术7leoufung3 小时前
LeetCode 149: Max Points on a Line - 解题思路详解样例过了就是过了3 小时前
LeetCode热题100 最长公共子序列HXDGCL3 小时前
矩形环形导轨:自动化循环线的核心运动单元解析Bat U3 小时前
JavaEE|多线程初阶(七)谭欣辰3 小时前
C++ 排列组合完整指南