题解 | #盛水最多的容器#

盛水最多的容器

https://www.nowcoder.com/practice/3d8d6a8e516e4633a2244d2934e5aa47

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param height int整型一维数组 
     * @return int整型
     */
    public int maxArea (int[] height) {
        // write code here
        int right=height.length-1;
        int left=0;
        int max=0;
        while(left<right){
            //过滤长度n为2的
            // if(height[left]<2){
            //     left++;
            // }
            // if(height[right]<2){
            //     right--;
            // }
            int leftHeight=height[left];
            int rightHeight=height[right];
            int len=right-left;
            max=Math.max(max,len*Math.min(leftHeight,rightHeight));
            //如果两边高度不相等,移动短的那一边
            if(leftHeight<rightHeight){
                left++;
            }else{
                right--;
            }
        }
        return max;
    }
}

全部评论

相关推荐

点赞 评论 收藏
分享
06-22 10:41
赣东学院 Java
程序员小白条:?周六晚上投,这是什么操作,专门找996起步的吗
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-10 11:27
明天又是董事长面,啥时候是个头啊
在太阳里长大的人:公司就仨人吧😂
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务