读题就读了很久
解法很巧妙 两个指针在两端 向中心挪动 因为只要其中一个高 它下次就不用挪 挪另一个 因为挪了没有意义 过程中keep max area
public class Solution {
public int maxArea(int[] height) {
int i = 0;
int j = height.length - 1;
int area = 0;
while ( i < j ){
area = Math.max( area, Math.min(height[i], height[j]) * (j-i) );
if ( height[i] > height[j] )
j --;
else
i ++;
}
return area;
}
}
高效算法:双指针解决最大面积问题
本文深入探讨了一种使用双指针技术解决最大面积问题的算法。通过在两端交替移动指针,算法在O(n)时间内找到了最优解,避免了传统方法的复杂度。详细解释了算法原理、实现过程以及应用实例。
363

被折叠的 条评论
为什么被折叠?



