Leetcode做题记录(11. 盛最多水的容器)

11. 盛最多水的容器

// 采用双指针法, i, j 
// 当i != j 时 此时围成的图形面积为 min(height[i], height[j])*(j - i);
// 取两者中较小的缩进 可以获得更大的面积
class Solution {
public:
    int maxArea(vector<int>& height) {
        int i = 0, j = height.size() - 1;
        int maxSq = 0;

        while (i != j) {
            maxSq = max(maxSq, (j - i) * min(height[i], height[j]));
            if (height[i] < height[j]) i++;
            else j--;
        }
        return maxSq;
    }
};

你可能感兴趣的:(leetcode,学习计划)