力扣刷题:11. 盛最多水的容器
·
这道题完美地卡在了我只知道放置前后指针的硬思维上,通过前后进行计算盛水量,再移动垂线较短的指针进行移动,就依次找到最大盛水量即可。
var maxArea = function(height) {
// 左右指针
let i = 0;
let j = height.length - 1;
let maxWater = 0;
let num = 1;
while(i != j){
let currentWater = 0;
if(height[i] < height[j]){
// 计算两个点之间的存储水容量
currentWater = height[i] * (height.length - num);
i++;
num++;
}
else{
// 计算两个点之间的存储水容量
currentWater = height[j] * (height.length - num);
j--;
num++;
}
maxWater = (maxWater > currentWater) ? maxWater : currentWater;
}
return maxWater;
};
更多推荐


所有评论(0)