LeetCode 11.盛最多水的雨水(数组)

解法一:枚举(暴力破解)

java描述

public int maxArea(int[] height) {

        int maxNumber = 0;

        for (int i = 0; i < height.length - 1; ++i) {

            for (int j = i + 1; j < height.length; ++j) {

                int area = (j - i) * Math.min(height[i], height[j]);

                maxNumber = Math.max(maxNumber, area);

            }

        }

        return maxNumber;

    }

C++描述

int maxArea(vector<int>& height) {

        int water = 0;

        for (int i = 0; i < height.size() - 1; ++i){

            for (int j = i + 1; j < height.size(); ++j){

                int minHeight = min(height[j], height[i]);

                water = max(water, (j - i) * minHeight);

            }

        }

        return water;

    }

javaScript描述:

var maxArea = function(height) {

    let maxArea = 0;

    for (let i = 0; i < height.length - 1; i++) {

        for (let j = i + 1; j < height.length; j++) {

            Area = (j - i) * Math.min(height[i], height[j]);

            maxArea = Math.max(Area, maxArea);

        }

    }

    return maxArea;

};

解法二:向中间夹逼

java描述

 public int maxArea(int[] height) {

        int max = 0;

        for (int i = 0, j = height.length - 1; i < j;){

            int minHight = height[i] < height[j] ? height[i++] : height[j--];

            max = Math.max(max, (j-i+1) * minHight); 

        }

        return max;

    }

// max = Math.max(max, (j-i+1) * minHight); 这里的j-i+1是因为上面提前i++或j--了。

C++描述

 int maxArea(vector<int>& height) {

        int water = 0;

        for (int i = 0, j = height.size() - 1; i < j;){

            int minHight = height[i] < height[j] ? height[i++] : height[j--];

            water = max(water, (j-i+1) * minHight); 

        }

        return water;

    }

javaScript描述:

var maxArea = function(height) {

    let maxArea = 0;

    for (let i = 0, j = height.length - 1; i < j;) {

        let minHeight = height[i] < height[j] ? height[i++] : height[j--];

        maxArea = Math.max((j - i + 1) * minHeight, maxArea);

    }

    return maxArea;

}; 

 

Supongo que te gusta

Origin blog.csdn.net/a66666_/article/details/105031791
Recomendado
Clasificación