Leetcode11(Java)

来源:互联网 发布:java socket 中断 编辑:程序博客网 时间:2024/06/03 18:37

Given n non-negative integers a1, a2, …, an, where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) 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 and n is at least 2.

    public int maxArea(int[] height) {        if(height.length==2)return Math.min(height[0], height[1]);        int maxarea = 0;        int left=0,right=height.length-1;        while(left<height.length-1 && right>=0 && right>left){            maxarea = Math.max(maxarea, Math.min(height[left], height[right]) * (right - left));            if (height[left] > height[right])            {                right--;            }            else            {                left++;            }        }        return maxarea;    }
原创粉丝点击