leetcode-第11题-盛最多水的容器

LeetCode 第11题:盛最多水的容器 我们通过双指针的方法解决了盛最多水的容器问题。这种方法不仅简洁高效,而且通过移动指针来不断逼近最优解,避免了暴力破解的低效。希望这篇博客能够帮助大家更好地理解和掌握这道题目。下次遇到类似的问题时,别忘了用双指针大法来试试看哦! 阅读详情

 博主并没有什么算法基础,所以写的不好,勿喷,抛砖引玉,欢迎交流,感谢。 

//给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i,ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。
// 说明:你不能倾斜容器,且 n 的值至少为 2。
// 图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。
// 示例:
// 输入:[1,8,6,2,5,4,8,3,7]
//输出:49 
// Related Topics 数组 双指针 
// 👍 1803 👎 0


package com.zqh.leetcode.editor.cn;

//Java:盛最多水的容器
public class P11ContainerWithMostWater {
    public static void main(String[] args) {
        Solution solution = new P11ContainerWithMostWater().new Solution();
        System.out.println(solution.maxArea(new int[]{1, 8, 6, 2, 5, 4, 8, 3, 7}));
        System.out.println(solution.maxArea(new int[]{1, 2}));
        // TO TEST
    }

    //leetcode submit region begin(Prohibit modification and deletion)
    class Solution {
        public int maxArea(int[] height) {
//          解题思路
//          1.获取当前数*小于当前数索引相减长度
            int max = 0;
            for (int i = 0; i < height.length; i++) {
                int h = height[i];
                for (int j = i + 1; j < height.length; j++) {
                    if (h >= height[j]) {
//                      最小高度*索引相减长度
                        int sum = height[j] * (j - i);
                        if (max < sum) {
                            max = sum;
                        }
                        continue;
                    }
                    int sum = h * (j - i);
                    if (max < sum) {
                        max = sum;
                    }
                }
            }
            return max;
        }
    }
//leetcode submit region end(Prohibit modification and deletion)

}

 

Silvaco TCAD仿真例库——肖特基二极管正向特性(例子) 此示例演示了肖特基二极管正向特性的仿真。 展示了: 使用 Atlas 语法形成二极管结构 设置阳极的肖特基势垒高度 正向偏置阳极 代码 第一部分:描述设备 mesh(网格) electrodes locations(电极位置) doping distribution(掺杂分布) 这是位于结构左侧和右侧的,2维n型器件,具有重掺杂浮动 p 型保护环区域, (2D n-type device with heavily doped floating p-type guard ring regio. 阅读详情

相关推荐

ARM64麒麟V10系统下PyTorch离线安装全攻略(附资源下载)

本文详细介绍了在ARM64架构的银河麒麟V10操作系统上,如何通过离线方式成功安装PyTorch深度学习框架。文章提供了从系统环境准备、依赖梳理、离线资源获取与验证,到分步安装、避坑指南及安装后验证的完整流程,并附有资源下载建议,旨在帮助开发者在国产化环境中高效部署AI开发平台。

metal的博客 744

Leetcode 11. 盛最多水的容器 (详细解析加JAVA代码)

首先明确一下容器容量的计算公式,这里简化为计算两条垂线和x轴围成的长方形面积。 根据短板效应:面积等于两条垂线中短的那一条 乘以 两条垂线的x轴距离。 即:S(i,j) = min(h[i],h[j]) × (j−i) (i,j分别为两条垂线的x轴坐标) 其次,我们要考虑怎么找到最大的面积? 肯定是通过移动指针选择不同的柱子来完成: 我们定义左右指针,初始分别指向最左边的柱子和最右边的柱子。每次移动的时候:都将高度低的柱子指针向内移动一格。直至两者相遇,比较所有面积,找到最大值。

qq_50438521的博客 1136

S32K3双核实战:手把手教你用EB配置CAN与CANFD(附中断/轮询代码对比)

本文详细解析了NXP S32K3双核处理器在CAN/CANFD通信开发中的实战应用。通过Elektrobit配置工具链,从双核通信架构设计到EB tresos Studio配置全流程,再到中断与轮询模式的代码实现对比,全面指导开发者优化S32K3 FlexCAN模块性能,提升汽车电子系统的通信效率与可靠性。

weixin_30955617的博客 440

盛最多水的容器

TOP100-7

青釉Oo的博客 477

SAP 对接CBS(http方式)

CLEAR:lv_xml_crc32_string. CONCATENATEcrc32_passwordcrc32_keyi_stringINTOlv_xml_crc32_string. CONDENSElv_xml_crc32_string. CALLFUNCTION'SCMS_STRING_TO_XSTRING' EXPORTING text=lv_xml_crc32_string encoding='8400' "GB...

3597

C++开发基础之掌握常用的三种异步编程模型

以上是三种常见的C++异步编程模型,每种模型都有其适用的场景和特点。根据具体需求,你可以选择合适的模型来进行异步编程。

dotnet研习社 2175

LeetCode 11.盛最多水的容器

题目: 给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明:你不能倾斜容器。 示例: 题目解析:实质为求两柱体围成的最大矩形面积 思路讲解: 1.暴力求解:两个for循环遍历数组,求出所有面积情况,取最大值。(可以但不推荐,该方法效率较低) * 2.双指针:两指针分别指向数组左右元素,求出..

blue_jun_的博客 1076

告别手动转换!用腾讯云轻量服务器+QMT插件,5分钟搞定聚宽策略实盘(附完整源码)

本文详细介绍如何利用腾讯云轻量服务器和QMT插件快速实现聚宽策略的自动化实盘部署。通过云端信号中转站解决协议转换、信号缓存等核心问题,5分钟完成服务器配置,并附完整源码实现零改造实盘方案,显著提升量化交易效率。

weixin_28707739的博客 659

【每日一题】- 盛最多水的容器

盛最多水的容器给定一个长度为 n 的整数数组 height。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i])。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。示例 1:输入:[1,8,6,2,5,4,8,3,7]输出:49 解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。

xuedong_1989的博客 404

SA8155 QNX显示框架与WFD配置实战:从黑屏排查到高可用设计

智能座舱中,车载显示系统的稳定性直接关系到驾驶安全。QNX作为高安全性的操作系统,在座舱仪表、ADAS等关键域中承担着确定性调度与隔离职责,其图形体系Screen与显示输出框架WFD协同工作,构成从应用渲染到面板点亮的完整链路。WFD配置涉及时序、通道映射与行为控制,任何参数偏差或加载异常都可能导致黑屏、花屏等故障。为保障系统可用性,需结合心跳监控、日志采集、通路重试与备份显示切换等策略,构建兼具快速感知与恢复能力的防御体系。本文以SA8155平台为例,深入拆解QNX显示框架的架构与WFD配置要点,结合一次

weixin_29165465的博客 203

【黑马点评】项目知识点及面经整理

【黑马点评】项目知识点及面经整理

m0_52031708的博客 6602

图解LeetCode11:盛最多水的容器(多种解法)

LeetCode11:盛最多水的容器 给你n个非负整数a1,a2,… … ,an,每个数代表坐标中的一个点(i, a)。在坐标内画n条垂直线,垂直线i的两个端点分别为(i, ai)和(i, 0)。找出其中的两条先,使得它们与x轴共同构成的容器可以容纳最多的水。 说明:你不能倾斜容器 示例: 输入:[1,8,6,2,5,4,8,3,7] 输出:49 输入:[1,1] 输出:1 提示: n == height.length 2 <= n <= 10^5 0 <= height[i] &l

weixin_46429290的博客 2040

线结构光相机原理详解以及精度控制总结

摘要:线阵结构光相机是工业三维检测的核心设备,结合线阵相机的高分辨率与结构光的主动三维成像能力。其工作原理基于线激光投射、逐线扫描、亚像素级条纹提取及三角测量法实现三维重建。精度受硬件、校准、环境和算法四因素影响,需通过优化硬件选型(如小像元相机、窄线宽激光)、精准校准(相机内参、激光平面)、环境控制(遮光、隔振、恒温)及算法优化(Steger算法、点云后处理)来提升。典型应用(卷材、轨道检测)中深度精度可达5-20μm,需根据场景需求平衡参数配置。

start_up_go的博客 937

力扣LeetCode第11题盛最多水的容器

力扣LeetCode第11题盛最多水的容器

weixin_44061444的博客 784

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

LeetCode(力扣)第11题:盛最多水的容器(C语言版)

摘要:本文详细解析了如何使用C语言高效解决"盛最多水容器"问题。通过双指针法(Two Pointers Technique),在O(n)时间内找到最大面积:初始化左右指针,计算当前面积并移动较短的指针,同时更新最大面积。关键点在于移动短边可能获得更高高度,而避免不必要的计算。C语言实现注重数组直接访问、变量缓存等优化,确保高效性。测试用例验证了算法的正确性,适用于大规模数据。该方法体现了贪心策略和C语言底层优化的结合,具有O(n)时间复杂度和O(1)空间复杂度。

weixin_74345888的博客 1886

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

LeetCode第11题_盛最多水的容器

这是一道经典的双指针题目:理解面积计算规则理解指针移动策略理解为什么这种策略是正确的优化思路:记录最大高度来跳过不必要的计算提前结束条件的判断关键点:双指针的移动策略面积计算的数学原理优化的判断条件。

qq_40263592的博客 1177

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

力扣(LeetCode)100题:11.盛最多水的容器

本文讨论了LeetCode"盛最多水的容器"问题的三种解法。初始暴力解法(双重循环)时间复杂度高(O(n²)),随后优化为双指针解法(O(n)):从数组两端向中间移动,每次移动较矮的指针并计算当前面积,保留最大值。官方解法思路相同,代码更简洁。双指针解法通过每次排除不可能成为最优解的情况,极大提升了效率,是解决此类问题的典型方法。

sweet_ran的博客 299

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

在本题中我们使用双指针遍历高度数组 height[] ,并保留每次双指针所在的两端高度内可蓄水的量,与记录的最大蓄水量进行对比,最后不断移动双指针直至找出最佳结果。图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。轴共同构成的容器可以容纳最多的水。找出其中的两条线,使得它们与。返回容器可以储存的最大水量。

m0_73201002的博客 277

力扣第11题-盛最多水的容器

轴共同构成的容器可以容纳最多的水。找出其中的两条线,使得它们与。返回容器可以储存的最大水量。

qq_42268998的博客 479

力扣热门100题 - 11.盛最多水的容器

力扣刷题笔记

zxwyhzy的博客 497

LeetCode第11题:盛最多水的容器

LeetCode第11题:盛最多水的容器 题目:给定 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 解法一:依次循环求出最大的面积,时间复杂度比较高。 class Solution { pub...

new_whiter的博客 308

LeetCode 热题 100 11. 盛最多水的容器

LeetCode 热题 100 | 11. 盛最多水的容器

m0_63951116的博客 661

LeetCode 11题盛最多水的容器

Problem 11 盛最多水的容器 题目 给定 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 说明:你不能倾斜容器,且 n 的值至少为 2。 来源:力扣(LeetCode) 链接:https://lee...

sakurasakura1996的博客 232

LeetCode 11题“盛最多水的容器”

LeetCode 11题“盛最多水的容器”要求在给定的一组垂直线中,找出两条线,使得它们与x轴共同构成的容器可以容纳最多的水。容器的容量由两条线之间的距离和较短线的高度决定。最直接的方法是枚举所有可能的线对并计算其容量,但这种方法的时间复杂度为O(n²),效率较低。这种方法通过贪心策略,逐步缩小搜索空间,确保在O(n)时间内找到最优解。这种方法的时间复杂度为O(n),因为只需要遍历一次数组。

weixin_45524582的博客 436

LeetCode高频题11:盛最多水的容器

1)LR从两头往中间凑,一定在考虑a最大的情况下,两根板子尽可能高的最优解先更新给max了 2)当L小,让L探索有没有更高的瓶颈,R也类似,总之保证底边a最大的可能性下,去探索更高的瓶颈,这样算出来的水量是最好的 3)笔试求AC,可以不考虑空间复杂度,但是面试既要考虑时间复杂度最优,也要考虑空间复杂度最优。...

weixin_46838716的博客 1229

Leetcode刷题-11. 盛最多水的容器

Leetcode刷题-11. 盛最多水的容器题目描述![在这里插入图片描述](https://img-blog.csdnimg.cn/20190301213013154.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMxMjA4N...

侯大师的博客 240
上一篇: leetcode-第7题-整数反转
下一篇: leetcode-第13题-罗马数字转整数
97牛肉面
博客等级 码龄9年 54粉丝 75原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值