面试经典150题——盛最多水的容器

面试经典150题 day28

题目来源

力扣每日一题;题序:11

我的题解

方法一 双指针

使用两个指针left和right,初始分别指向最左侧和最右侧,然后每次移动矮的一侧。存水量=Math.min(height[left],height[right])*(right-left)
时间复杂度 :O(n)
空间复杂度:O(1)

java 复制代码
public int maxArea(int[] height) {
    int left=0,right=height.length-1;
    int res=0;
    while(left<right){
        int t=Math.min(height[left],height[right])*(right-left);
        res=Math.max(res,t);
        if(height[left]<height[right]){
            left++;
        }else{
            right--;
        }
    }
    return res;
}

有任何问题,欢迎评论区交流,欢迎评论区提供其它解题思路(代码),也可以点个赞支持一下作者哈😄~

相关推荐
远方1609几秒前
0x-2-Oracle Linux 9上安装JDK配置环境变量
java·linux·oracle
北执南念6 分钟前
CompletableFuture+线程池使用案列
java
eachin_z37 分钟前
力扣刷题(第四十九天)
算法·leetcode·职场和发展
黄交大彭于晏39 分钟前
发送文件脚本源码版本
java·linux·windows
闻缺陷则喜何志丹1 小时前
【强连通分量 缩点 拓扑排序】P3387 【模板】缩点|普及+
c++·算法·拓扑排序·洛谷·强连通分量·缩点
钮钴禄·爱因斯晨1 小时前
Java 面向对象进阶之多态:从概念到实践的深度解析
java·开发语言·数据结构
鸽子炖汤1 小时前
Java中==和equals的区别
java·开发语言·jvm
江城开朗的豌豆1 小时前
JavaScript篇:对象派 vs 过程派:编程江湖的两种武功心法
前端·javascript·面试
hstar95271 小时前
二、即时通讯系统设计经验
java·架构
江城开朗的豌豆1 小时前
JavaScript篇:字母侦探:如何快速统计字符串里谁才是'主角'?
前端·javascript·面试