关于c:11-盛最多水的容器LeetCode-C语言

双指针法:

int maxArea(int* height, int heightSize){
    int max = 0;
    for (int i = 0, j = heightSize - 1; i < j; ) {
        int min = height[i] <= height[j] ? i : j;
        if (height[min] * (j - i) > max) {
            max = height[min] * (j - i);
        }
        if (min == i) {
            i++;
        } else if (min == j) {
            j--;
        }
    }
    return max;
}

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理