LeetCode【11】 盛水最多的容器

题目:

分析:

1、双指针,储水为(R-L )* 二者较小高度,如题目,(9-2)* 7 = 49

2、双指针向中间靠,每次移动较矮的指针。

代码:

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

     return max;
 }
相关推荐
快手技术1 小时前
快手提出端到端生成式搜索框架 OneSearch,让搜索“一步到位”!
算法
华仔啊2 小时前
主线程存了用户信息,子线程居然拿不到?ThreadLocal 背锅
java·后端
间彧2 小时前
Spring Boot项目中,Redis 如何同时执行多条命令
java·redis
召摇2 小时前
如何避免写垃圾代码:Java篇
java·后端·代码规范
vker2 小时前
第 1 天:单例模式(Singleton Pattern)—— 创建型模式
java·设计模式
我不是混子2 小时前
什么是内存泄漏?
java
程序员小假2 小时前
我们来说说当一个线程两次调用 start() 方法会出现什么情况?
java·后端
SimonKing3 小时前
Archery:开源、一站式的数据库 SQL 审核与运维平台
java·后端·程序员
皮皮林55115 小时前
IDEA 源码阅读利器,你居然还不会?
java·intellij idea
卡尔特斯19 小时前
Android Kotlin 项目代理配置【详细步骤(可选)】
android·java·kotlin