[leetcode hot 150]第十一题,盛水最多的容器

题目:

给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明:你不能倾斜容器。

初始化分别位于高度数组开始和结束处的左右两个指针。计算指针当前位置的两行之间的面积。如果当前面积较大,更新最大面积。将高度较小的指针移向另一个指针。

java 复制代码
public class no_11 {
    public static void main(String[] args) {
        int[] arr = {1, 8, 6, 2, 5, 4, 8, 3, 7};
        System.out.println(maxArea(arr));
    }

    public static int maxArea(int[] height) {
        int left = 0;
        int right = height.length - 1;
        int maxArena = 0;
        while (left < right) {
            int h = Math.min(height[left], height[right]);
            int w = right - left;
            int arena = h * w;
            maxArena = Math.max(arena, maxArena);

            if (height[left] < height[right]) {
                left++;
            } else {
                right--;
            }
        }
        return maxArena;

    }
}
相关推荐
NAGNIP1 天前
Hugging Face 200页的大模型训练实录
人工智能·算法
Swift社区1 天前
LeetCode 457 - 环形数组是否存在循环
算法·leetcode·职场和发展
白帽黑客-晨哥1 天前
Web安全方向的面试通常会重点考察哪些漏洞和防御方案?
安全·web安全·面试·职场和发展·渗透测试
2401_877274241 天前
2025数据结构实验八:排序
数据结构·算法·排序算法
J2虾虾1 天前
空间矢量数据结构及其表达
算法
Neil今天也要学习1 天前
永磁同步电机无速度算法--永磁同步电机转子位置精确估计的误差抑制方法
算法
Irene19911 天前
JavaScript 常见算法复杂度总结(大O表示法)
javascript·算法
开心比对错重要1 天前
进程、线程、虚拟线程详解及线程个数设置
java·jvm·算法·面试
爱学大树锯1 天前
【594 · 字符串查找 II】
java·开发语言·算法
m0_692457101 天前
图像噪点消除
人工智能·算法