做完接雨水 思想差不多 这个更简单 就顺便来做一下这个
第一次先用朴素做法 超时啦
class Solution {
public int maxArea(int[] height) {
int n = height.length;
int ans = 0;
int min = 0;
for(int i = 0; i < n; i ++){
for(int j = i + 1; j < n; j ++){
min = Math.min(height[j], height[i]);
ans = Math.max(ans, min * (j - i));
}
}
return ans;
}
}
修修改改 双指针yyds
class Solution {
public int maxArea(int[] height) {
int n = height.length;
int ans = 0;
int l = 0, r = n - 1;
while(l < r){
int tmp = Math.min(height[l], height[r]) * (r - l);
ans = Math.max(ans, tmp);
if(height[l] <= height[r]){
l ++;
}else{
r --;
}
}
return ans;
}
}
芜湖