盛最多水的容器(力扣11题)
例题:

分析:
这道题给出了一个数组,数组里的元素可以看成每一个挡板,要找到哪两个挡板之间盛的水最多,返回盛水量的最大值。这其实是一个双指针问题。
我们可以先固定第一个挡板( i )和最后一个挡板( j ), height[0] = 1, height[8] = 7,看看盛水量。

现在盛水量比较少,要让盛水量尽可能多,假设我们先移动 j 指针

我们发现,固定了两个挡板,当移动高的挡板时,盛水量随着 j 指针的左移在不断减少,必然小于最初的盛水量,因此我们不能移动高挡板。
如果移动较低的挡板,如下图:

移动较低的挡板,盛水量是有可能增多的。
核心思想:向中间不断缩减距离,每次改变较短的挡板。
代码实现:
public class MostWaterLeetcode11 {public static int maxArea(int[] height) {int i = 0, j = height.length - 1;int max = 0; //最大盛水量while(i < j){int min = Integer.min(height[i], height[j]);max = Math.max(max, (j - i) * min);while(i < j && height[i] <= min){i++;}while(i < j && height[j] <= min){j--;}}return max;}public static void main(String[] args) {System.out.println(maxArea(new int[]{1, 8, 6, 2, 5, 4, 8, 3, 7})); // 49System.out.println(maxArea(new int[]{2,1})); // 1}
}
相关文章:
盛最多水的容器(力扣11题)
例题: 分析: 这道题给出了一个数组,数组里的元素可以看成每一个挡板,要找到哪两个挡板之间盛的水最多,返回盛水量的最大值。这其实是一个双指针问题。 我们可以先固定第一个挡板( i )和最后一个挡板( j ),…...
.babky勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
导言: 网络安全威胁不断进化,其中.babky勒索病毒引起了广泛关注。这篇文章91数据恢复将深入介绍.babky的狡猾特征,以及在遭受其袭击时如何高效地恢复被加密的数据,并提供实用的预防方法。当面对被勒索病毒攻击导致的数据文件加密…...
20240103-通过布局让自己的生活有有意义人生有价值
最近听到看到的一些词 心力、稀缺、卓有成效、知行合一、致良知、心即理、事上练 最近琢磨出这么一个道理,就是任何人做事情其实都有内心趋势和一套适合他自己的内心驱动的方法。我们经常意识不到,我时常也会去寻求做一件事,是不是有特定的…...
JDK17 - 开发者视角,从 JDK8 ~ JDK17 都增加了哪些新特性
目录 前言 一、站在开发视角,从 JDK8 升级到 JDK17 都有哪些新特性 1.1、JDK8 新特性 1.1.1、Optional 类 a)简介 b)使用方法 c)使用场景 1.2、JDK9 新特性 1.2.1、Optional - ifPresentOrElse 解决 if-else 1.2.2、Opt…...
八股文打卡day11——计算机网络(11)
面试题:HTTP多个TCP连接怎么实现? 我的回答: 1.HTTP1.0的时候,一个TCP连接只能进行一次请求响应。可以建立多个连接到服务器,这样就可以同时进行多个请求响应,提高传输效率。 2.HTTP1.1推出了持久连接&am…...
在Android设备上设置和使用隧道代理HTTP
随着互联网的深入发展,网络信息的传递已经成为人们日常生活中不可或缺的一部分。对于我们中国人来说,由于某些特殊的原因,访问国外网站时常常会遇到限制。为了解决这个问题,使用代理服务器成为了许多人的选择。而在Android设备上设…...
Paddle3D 2 雷达点云CenterPoint模型训练
2 Paddle3D 雷达点云CenterPoint模型训练–包含KITTI格式数据地址 2.0 数据集 百度DAIR-V2X开源路侧数据转kitti格式。 2.0.1 DAIR-V2X-I\velodyne中pcd格式的数据转为bin格式 参考源码:雷达点云数据.pcd格式转.bin格式 def pcd2bin():import numpy as npimport…...
RabbitMQ集群的简单说明
1.普通集群(副本集群) 当集群中某一时刻master主节点宕机,可以对master中Queue中的消息进行备份。而就算master宕机了,从节点不会对外提供服务,等到master节点恢复后,系统才会恢复正常。 主从架构的缺点是队列中的消息只是位于主节…...
支付宝沙箱支付-验签出错之编码集异常
异常信息 invalid-signature 错误 验签出错 错误代码 invalid-signature 错误原因: 验签出错,建议检查签名字符串或签名私钥与应用公钥是否匹配,网关生成的验签字符串为: alipay_sdkalipay-sdk-java-dynamicVersionNo&....官方通用…...
图像分割-漫水填充法 floodFill (C#)
版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 本文的VB版本请访问:图像分割-漫水填充法 floodFill-CSDN博客 FloodFill方法是一种图像处理算法,它的目的是…...
在pycharm中jupyter连接上了以后显示无此库,但是确实已经安装好了某个库,使用python可以跑,但是使用ipython就跑不了
今天遇到一个事情,就是用pycharm的jupyter时,连接不上,后来手动连接上了以后,发现环境好像不对。 一般来说,这里会是python3,所以里面的环境也是普通python的环境,并没有我下载的库,…...
C++多态性——(3)动态联编的实现——虚函数
归纳编程学习的感悟, 记录奋斗路上的点滴, 希望能帮到一样刻苦的你! 如有不足欢迎指正! 共同学习交流! 🌎欢迎各位→点赞 👍 收藏⭐ 留言📝 成功的秘诀就在于多努力一次ÿ…...
docker部署mysql
1.查找mysql镜像 [rootVM-4-5-centos ~]# docker search mysql NAME DESCRIPTION STARS OFFICIAL AUTOMATED mysql MySQL is a widely used, open-sourc…...
python代码大全(持续更新)
读写文件 # 读取文件 with open(file.txt, r) as file:content file.read()# 写入文件 with open(file.txt, w) as file:file.write(Hello, World!)HTTP请求 import requestsresponse requests.get(https://api.example.com/data) data response.json()JSON处理 import j…...
C#学习笔记 - C#基础知识 - C#从入门到放弃 - C# 处理程序异常相关技术
C# 入门基础知识 - C# 处理程序异常相关技术 第11节 处理程序异常相关技术11.1 捕获异常11.2 清除、处理所有异常11.3 引发异常11.4 预定义异常类11.5 自定义异常类11.6 异常的综合运用 更多C#基础知识点可查看:C#学习笔记 - C#基础知识 - C#从入门到放弃 第11节 处…...
[python]项目怎么使用第三方库
要在Python项目中使用第三方库,可以按照以下步骤进行: 安装第三方库:使用pip命令安装要使用的第三方库。例如,要安装requests库,可以运行以下命令: pip install requests导入库文件:在Python项…...
java每日一题——双色球系统(答案及编程思路)
前言: 打好基础,daydayup! 题目:要求如下(同时:红球每个号码不可以相同) 编程思路:1,创建一个可以录入数字的数组;2,生成一个可以随机生成数字的数组…...
java的mybatis
一.spring 整合单元测试 二.lombok 三.注解方式开发 四.xml 方式开发 五.动态sql...
Linux驱动开发简易流程
推荐视频: 正点原子【第四期】手把手教你学 Linux之驱动开发篇 小智-学长嵌入式Linux&Android底层开发入门教程 能力矩阵 基础能力矩阵 熟悉c/c、熟悉数据结构 熟悉linux系统,Shell脚本,Makefile/cmake/mk 文件IO、多线程、竞争、并发…...
基于springboot的靓车汽车销售网站
🍅点赞收藏关注 → 私信领取本源代码、数据库🍅 本人在Java毕业设计领域有多年的经验,陆续会更新更多优质的Java实战项目希望你能有所收获,少走一些弯路。🍅关注我不迷路🍅一 、设计说明 1.1 研究背景 随…...
SpeedyStepper Forked:嵌入式步进电机硬实时控制库解析
1. SpeedyStepper Forked:面向嵌入式实时控制的高性能步进电机驱动库深度解析1.1 库定位与工程价值SpeedyStepper Forked 是一个专为嵌入式平台(尤其是基于Arduino生态的MCU)设计的轻量级、高精度步进电机运动控制库。其核心目标并非提供图形…...
OpenClaw备份策略:GLM-4.7-Flash智能管理本地与云端存储
OpenClaw备份策略:GLM-4.7-Flash智能管理本地与云端存储 1. 为什么需要智能备份方案 上周我的移动硬盘突然罢工,导致三个月的项目文档全部丢失。这次惨痛经历让我意识到:传统备份方式已经无法满足现代工作需求。手动备份不仅耗时耗力&#…...
OpenClaw技能调试:GLM-4.7-Flash功能开发排错指南
OpenClaw技能调试:GLM-4.7-Flash功能开发排错指南 1. 为什么需要关注技能调试 上周我在为团队开发一个基于GLM-4.7-Flash的自动化周报生成技能时,遇到了一个棘手的问题:技能在本地测试时运行完美,但部署到OpenClaw后却频繁超时。…...
EN50155以太网交换机的X键位M12插座在PCB板上同一高度方法
在轨道交通车载EN50155以太网交换机的PCB设计中,X键位M12插座(千兆/万兆接口)常需多个并排或阵列布局。由于X编码插座引脚数较多(8芯)且结构复杂,确保所有插座在PCB板上的同一高度(共面性&#…...
终极方案:如何在Windows资源管理器中完美显示HEIC缩略图
终极方案:如何在Windows资源管理器中完美显示HEIC缩略图 【免费下载链接】windows-heic-thumbnails Enable Windows Explorer to display thumbnails for HEIC files 项目地址: https://gitcode.com/gh_mirrors/wi/windows-heic-thumbnails 你是否经常遇到这…...
利用快马平台快速构建mcporter数据转换工具原型,十分钟验证数据管道设计
最近在做一个数据迁移项目时,遇到了需要频繁转换数据格式的需求。传统方式下,光是搭建开发环境、编写基础代码就要花上大半天时间。这次尝试用InsCode(快马)平台快速构建了一个mcporter数据转换工具原型,整个过程出乎意料地顺畅。 明确核心需…...
5大核心功能重塑Sketch效率:RenameIt批量命名工具的流程优化实践
5大核心功能重塑Sketch效率:RenameIt批量命名工具的流程优化实践 【免费下载链接】RenameIt Keep your Sketch files organized, batch rename layers and artboards. 项目地址: https://gitcode.com/gh_mirrors/re/RenameIt 在现代UI/UX设计工作流中&#x…...
AI视频修复与画质增强完全指南:从低清到高清的视频优化解决方案
AI视频修复与画质增强完全指南:从低清到高清的视频优化解决方案 【免费下载链接】video2x A lossless video/GIF/image upscaler achieved with waifu2x, Anime4K, SRMD and RealSR. Started in Hack the Valley II, 2018. 项目地址: https://gitcode.com/GitHub_…...
基于Python+Hadoop+Spark的美食推荐系统 数据采集与可视化平台 Django框架
1、项目介绍 技术栈 Python语言、Django框架、Scrapy爬虫框架、Echarts 可视化,采集下厨房网站数据。功能模块推荐美食美食用料排行榜分析美食分类占比分析饮食科普美食分类美食详情信息美食详情做法后台数据管理项目介绍本项目基于指定技术栈,爬取下厨房…...
CosyVoice Docker 部署优化:如何有效降低 CPU 占用率
在语音合成服务日益普及的今天,CosyVoice 凭借其出色的音质和灵活性,成为了许多开发者的选择。然而,当我们将它部署到 Docker 容器中时,一个普遍且棘手的问题随之而来:CPU 占用率居高不下。这不仅导致服务器资源成本飙…...
