11. 盛最多水的容器(JS实现)

js代码-盛水最多容器 立即下载

1 题目

给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。

2 思路

该题使用首尾双指针向中间靠拢的办法,逐步比较面积大小

3代码

/**
 * @param {number[]} height
 * @return {number}
 */
var maxArea = function(height) {
    var low = 0;
    var high = height.length - 1;
    var max = Math.min(height[low], height[high]) * (high - low);

    while(low < high) {
        if (height[low] < height[high]) {
            low++;
        } else {
            high--;
        }

        max = Math.max(max, Math.min(height[low], height[high]) * (high - low));
    }
    return max;
};
笔试题-2023-星宸-数字IC设计【纯净题目版】 4 笔试题-2023-星宸-数字IC设计【纯净题目版】 阅读详情

相关推荐

SuperPoint+SuperGlue在HLoc中的实战效果对比:5大公开数据集测试报告

本文在HLoc框架下,对传统SIFT与深度学习组合SuperPoint+SuperGlue在五大公开数据集上的视觉定位效果进行了实战对比测试。报告详细分析了两种方案在Aachen Day-Night、RobotCar Seasons等不同光照、季节及场景下的表现,揭示了SuperPoint+SuperGlue在应对剧烈光照变化和长期外观变化时的显著优势,并提供了基于HLoc模块化设计的选型与配置策略。

weixin_29093169的博客 425

【JS算法】盛最多水的容器

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

m0_69429961的博客 577

LK32T102 单片机 操作GPIO实现流水灯(1)

前言: LK32T10232(32位)单片机是一款专为电机控制器和数字电源开发的高性能 MCU。采Cortex-M0 内核,最高工作频率可达 72Mhz,ADC 采样速率 达 1Msps。同时具备协处理器单元可满足各种乘法、除法、移位以及各种 复杂函数运算。 LK32T102(32位)支持单电源供电,且内嵌高精度高速及低速振荡器,以及具备 多种低功耗工作模式。同时,集成了多路增强型 PWM,多通道模拟比较 器和高速运算放大器,可满足多种电机及功率控制应用,并简化系统成本。...

qq_58676187的博客 3189

力扣11. 盛最多水的容器

图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。轴共同构成的容器可以容纳最多的水。找出其中的两条线,使得它们与。返回容器可以储存的最大水量。

g841805的博客 388

销售预测的方法与模型(三)丨安全库存与再订货(补货)

较高的 Z 值对应较高的服务水平(例如,服务水平 99% 对应 Z 值 2.33),意味着企业希望更低的缺货风险,因此需要更高的安全库存。在再订货点的管理中,考虑到供应商交货的不确定性,通常需要结合安全库存,以防止在交货期间库存用尽。要对L开根号,根号L表示交货周期越长,企业需要的安全库存越多,因为在较长的供应期内,需求波动的累积效应更明显。举例:供应商的交期服从标准差为2件/天的正态分布,顾客需求为50件/天的正态分布,若要客户服务水平达到 90%,安全库存量应该是多少?下面介绍几种核心的模型与公式。

weixin_45675709的博客 1534

CloudFlare CDN优化延迟

这两天在倒腾一个小网站,因为刚注册的域名还没来得及备案,所以就解析到了国外的服务器临时撸代码。为了防止不必要的麻烦,所以在前端套了CloudFlare,但是延迟就比较感人了,通常在150+左右还时不时的抽风,所以就找了点资料来优化一下这个延迟问题。然后再新增一些CloudFlare的亚太地区节点ip的A解析,有耐心的可以分为电信线路和联通线路,我比较懒,所以只分了境内和默认。众所周知CloudFlare是智齿cname解析的,那么我们今天就要用到这个办法了,这里要注意一下,默认的解析是不能动的。

Zuozi - 网络从业者长见识就来Zuozi.NET 1084

leetCode11:盛最多水的容器js

LeetCode js

Davidzw99的博客 504

芒果YOLOv5改进107:ARConv自适应旋转卷积,全网首发 | 即插即用:以增强其表征能力,从而准确检测方向物体,ICCV顶会论文idea

ARConv自适应旋转卷积,全网首发 | 即插即用:以增强其表征能力,从而准确检测方向物体,ICCV顶会论文idea

包括YOLOv5、YOLOv7、YOLOv8等模型改进 956

LeetCode11盛最多水的容器

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

qq_43015237的博客 636

2026华为OD机试 新系统真题题库目录|机考题库 + 算法考点详解

华为OD机试 新系统真题题库目录|机考题库 + 算法考点详解华为od机试,华为od机试真题,华为od机试E卷,华为odE卷,华为od机试真题E卷,华为OD,华为OD机试,华为OD机试真题,华为od机考,华为od机试D卷,华为od机试真题D卷,华为od手撕代码,华为od,华为od机试C卷,华为od e卷,华为2026e卷,od机试,2026E卷,华为OD机试E卷,什么是华为od,华为od介绍,全面了解华为od,2026华为od,如何备战华为od,华为od算法,华为od手撕代码,华为OD机试2024年最新题库,

KJ.JK 4698

【手把手教学】YOLOv13的Dilated Reparam Block (DRB) 实现细节与优化技巧

DRB(Dilated Reparam Block)是一种创新的卷积神经网络模块,通过多分支膨胀卷积和结构重参数化技术显著提升模型性能。训练阶段使用不同膨胀率和卷积核大小的并行分支增强特征提取能力,推理阶段则将这些分支融合为单一高效的大核卷积。该方法成功解决了大核卷积的计算复杂度和训练困难等问题,在保持推理效率的同时,使模型准确率提升8.56%,mAP暴涨12.33%。DRB的核心在于训练时复杂、推理时简单的设计哲学,以及膨胀卷积的多尺度特征提取能力,为CNN性能优化提供了新的思路。

FJN110的博客 556

JavaScript 每日一题---LeetCode 11. 盛最多水的容器

题目描述: 给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明:你不能倾斜容器。 解题思路: 本质上就是一个算面积的问题,取两条线中较短的一条与两条线的间隔相乘即为当前围成的面积。所以很容易就想到双指针的做法,即左指针最开始在最左端,右指针最开始在最右端,逐步向中间逼近。每次移动的是指向...

weixin_52462962的博客 446

SKUA-GOCAD入门教程-第七节 点的创建与编辑3

本文介绍了四种从井数据创建点集的方法

江洋大葱的博客 963

JavaScript实现 盛最多水的容器--力扣(leetcode 11)

目录 1 问题 2 输入输出 3 解法 1)暴力法 2)双指针方法 4 代码 1 问题 https://leetcode-cn.com/problems/container-with-most-water/ 给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点(i,ai) 。在坐标内画 n 条垂直线,垂直线 i的两个端点分别为(i,ai) 和 (i, 0)。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水 说明:你不能倾斜容器,且n的值...

bailizx 696

IDEA的使用指南

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

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

LeetCode11.盛最多水的容器 JavaScript

LeetCode11.盛最多水的容器 JavaScript 给定n 个非负整数a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画n条垂直线,垂直线i的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 说明:你不能倾斜容器,且n的值至少为2。 图中垂直线代表输入数组 [1,8,6,2,5,4,8,3...

weixin_34270865的博客 317

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

LeetCode11. 盛最多水的容器

写在前面: 抱着试一试的心态想两个for循环暴力出来,居然没过,之前写的题好像暴力都过了,显示超时之后就优化咯 思路: 双指针解法 面积尽可能大,那么就需要宽和高越大越好 从左右两边开始开始计算,即让宽最大 让高度低的一边收缩,找到更高的高度,最后得出最优解 C++代码: class Solution { public: int maxArea(vector<int>&am...

Gary的博客 143

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

LeetCode hot100——盛最多水的容器

学习了“ 双指针” 的基础知识后,我们继续来完成第二道题。

2401_83897612的博客 244

盛最多水的容器(双指针)

本文讲解LeetCode第11题「盛最多水的容器」的解法。通过分析容器面积由宽度和最小高度决定,提出双指针解法:初始时指针位于数组两端,每次移动较矮的指针,并计算当前面积更新最大值。该策略基于贪心思想,确保不会错过最优解。JavaScript实现代码展示了O(n)时间复杂度的解法,示例演示了计算过程。这是双指针算法在数组问题中的典型应用,理解移动较矮指针的策略对解决类似问题具有启发意义。

2301_81726198的博客 347

刷题记录(Container With Most Water)

Leecode 11: Container With Most Water(JS解题) 思路:采用双指针,移动的原则是,谁小谁向中间移动 function maxArea(height: number[]): number { var res:number = 0; var left:number = 0; var right:number = height.length - 1; while(left < right){ var temp

下半年记忆的博客 146

11 盛最多水的容器(2021-07-06)

11. 盛最多水的容器 链接:https://leetcode-cn.com/problems/container-with-most-water/ 题目描述见链接内容。 解法1:暴力法 二话不说,暴力开干。分别以每两个坐标作为起始点,画出矩形,比较大小: var maxArea = function (height) { const len = height.length; let result = 0; for (let i = 0; i < len; i++) { fo

多啦的博客 151

Leetcode 126 两数之和 II - 输入有序数组 | 盛最多水的容器

核心优化是找到结果后立即返回,避免无效循环,这是提升执行效率的关键。减少重复的和计算、简化返回逻辑,让代码更简洁且性能更好。双指针法本身已是该问题的最优解法(时间 O (n)、空间 O (1)),优化后保持了最优复杂度,仅提升代码的执行效率和可读性。双指针法的核心是移动较矮的指针,因为盛水量由矮边决定,移动高边无法提升有效高度,只会减少宽度;该解法将时间复杂度从暴力法的 O (n²) 优化到 O (n),是本题的最优解;代码逻辑简洁,关键是理解 “宽度最大优先,逐步优化高度” 的思路。

im_AMBER的博客 727

LeetCodeHot100 11.盛最多水的容器 JavaScript版本解析&代码

本文介绍了解决盛水容器问题的两种方法:暴力解法和双指针优化解法。暴力解法使用双重循环计算所有可能的容器面积,虽然正确但效率低下导致超时。优化后的双指针解法通过左右指针向中间移动的策略,每次移动较矮的柱子指针,只需O(n)时间复杂度即可找到最大面积。该方法巧妙地利用容器高度由较矮柱子决定的特性,显著提升了计算效率,是处理此类问题的经典优化方案。

2301_79895335的博客 57

双指针算法解决盛水容器问题

双指针算法是一种高效的数组遍历技术,通过维护两个指针从不同方向移动来缩小搜索空间。其核心原理是利用问题特性排除不可能的解,将时间复杂度从O(n²)优化到O(n)。在解决'盛最多水的容器'这类极值问题时,双指针通过比较两端高度并移动较小指针的策略,确保不会错过最优解。这种算法在LeetCode等编程题库中广泛应用,特别适合处理数组、字符串中的搜索、匹配和极值计算问题。实际工程中,类似思想可用于资源分配优化、数据压缩等场景。掌握双指针技巧能显著提升解决算法问题的效率,是面试和竞赛中的必备技能。

weixin_34005042的博客 289

LeetCode - 11 盛最多水的容器

也就是说 h[R1] * (R1 - L1 + 1) 的结果是肯定大于 h[L] * (R - L + 1) 的,因此这里 L 虽然没有匹配到最优高柱 R1,但是 R1 作为矮柱时的容器肯定比当前 R1 作为高柱时的容器盛水更多。容器内水的容量大小 V,取决于容器两端中的较短柱子h_min,因此为了使得容器内水尽可能的多,我们应该找到距离 h_min 柱子最远的,且高度>= h_min 的另一个柱子。解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。输入:height = [1,1]

优快云 1753

【华为机试】11. 盛最多水的容器

摘要: 盛最多水容器问题要求在给定高度数组中找到两条垂直线,使其与x轴构成的容器面积最大。关键公式为面积 = 最小高度 × 宽度。暴力解法(O(n²))遍历所有可能组合,而优化的双指针解法(O(n))从两端向中间移动,每次移动较矮的指针以寻求更大高度。双指针算法通过动态调整指针位置,有效减少计算量,适用于大数据场景。示例输入[1,8,6,2,5,4,8,3,7]的最大面积为49,由高度8和7相距7个单位构成。该算法模式广泛应用于雨水收集、股票买卖等区间优化问题。(150字)

qq_32019341的博客 868
上一篇: 8. 字符串转换整数 (atoi)(JS实现)
下一篇: 15. 三数之和(JS实现)
PAT-python-zjw
博客等级 码龄10年 381粉丝 408原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值