admin管理员组

文章数量:1794759

盛⽔最多的容器 04

盛⽔最多的容器

算法思想:对撞指针:

我写的代码:

代码语言:javascript代码运行次数:0运行复制
class Solution {
    public  int maxArea(int[] height) {
        int left=0;
        int right=height.length-1;
        int minHight=-1;//防止[2,0]这种特殊情况
        int maxV=0;
        while(left<right) {
            if(height[left]>height[right]&&height[right]>minHight) {
                maxV=Math.max(maxV,height[right]*(right-left));
                right--;
            } else {
                maxV=Math.max(maxV,height[left]*(right-left));
                left++;
            }
        }
        return maxV;
    }
}

官方题解:

代码语言:javascript代码运行次数:0运行复制
class Solution
    {
        public int maxArea(int[] height)
        {
            int left = 0, right = height.length - 1, ret = 0;
            while(left < right)
            {
                int v = Math.min(height[left], height[right]) * (right - left);
                ret = Math.max(ret, v);
                if(height[left] < height[right]) left++;
                else right--;
            }
            return ret;
        }
    }
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2024-10-17,如有侵权请联系 cloudcommunity@tencent 删除指针容器heightint算法

本文标签: 盛⽔最多的容器 04