说明:你不能倾斜容器,且 n 的值至少为 2。
?
图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。...示例:
输入:[1,8,6,2,5,4,8,3,7] 输出:49
02 PART
题目分析
观察可得,垂直的两条线段将会与坐标轴构成一个矩形区域,较短线段的长度将会作为矩形区域的宽度,两线间距将会作为矩形区域的长度...,我们求解容纳水的最大值,实为找到该矩形最大化的区域面积。...这道题比较经典是是使用双指针进行求解,已经会的朋友不妨复习复习。
假若我们的数组为:[1 8 6 2 5 4 8 3 7],长这样:
?...首先,我们初始化两个指针,分别指向两边,构成我们的第一个矩形区域。
?
我们尝试将长的一侧向短的一侧移动,发现对于区域面积增加没有任何意义。比如下图:
?
所以我们选择将短的一侧向长的一侧移动。