现在的位置: 首页 > 综合 > 正文

Container With Most Water leetcode

2018年09月30日 ⁄ 综合 ⁄ 共 573字 ⁄ 字号 评论关闭

Given n non-negative integers a1a2,
..., an,
where each represents a point at coordinate (iai). n vertical
lines are drawn such that the two endpoints of line i is at (iai)
and (i, 0). Find two lines, which together with x-axis forms a container, such that the container contains the most water.

Note: You may not slant the container.

public class Solution {
    public int maxArea(int[] height) {
        
        
        if(height==null || height.length<=1) return 0;
        
        int begin = 0,end = height.length-1;
        
        int max = 0;
        while(begin<end){
            int now = (end-begin)*Math.min(height[begin],height[end]);
            
            if(now>max) max = now;
            
            if(height[begin]>height[end])
                end--;
            else
                begin++;
        }
        return max;
    }
}

抱歉!评论已关闭.