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

盛水最多的容器

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

用双指针来判断

public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param height int整型vector 
     * @return int整型
     */
    int maxArea(vector<int>& height) {
        // write code here
        int n = height.size();
        if(n == 0|| n ==1) return 0;
        int l = 0, r = n-1;
        int res = (r-l) *min(height[l], height[r]);
        while( l < r){
            res = max(res, (r-l)*min(height[l], height[r]));
            if(height[l] < height[r]){
                l++;
            }else{
                r--;
            }
        }
        return res;
    }
};
全部评论

相关推荐

你背过凌晨4点的八股文么:简历挂了的话会是流程终止,像我一样
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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