当前位置: 首页> 房产> 建材 > [leetcode hot 150]第十一题,盛水最多的容器

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

时间:2025/7/15 19:42:25来源:https://blog.csdn.net/weixin_45201305/article/details/139842672 浏览次数:0次

题目:

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

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

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;}
}

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

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: