LeetCode刷题专题
Posted DoBetteri
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode刷题专题相关的知识,希望对你有一定的参考价值。
1.
https://leetcode-cn.com/problems/container-with-most-water/
思想:左右边界 i,j 向中间收敛 ,左右夹逼
方法一:
一维数组的坐标变换 i,j
枚举:left bar,right bar. (x-y)*height_diff
class Solution {
public int maxArea(int[] height) {
int max = 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]);
max = Math.max(max,area);
}
}
return max;
}
}
方法二:
class Solution {
public int maxArea(int[] height) {
int max = 0 ;
for(int i = 0, j = height.length -1; i<j;) {
int minHeight = height[i]<height[j]? height[i++]:height[j--];
int area =(j-i+1)*minHeight;
max = Math.max(max,area);
}
return max;
}
}
以上是关于LeetCode刷题专题的主要内容,如果未能解决你的问题,请参考以下文章