《leetcode-go》装最多水的容器

T型三电平关管顺序要求 摘要: T型三电平拓扑中,IGBT关断必须遵循“外管先关、内管后关”的时序,否则易导致器件损坏。正常导通时,外管与内管共同分担电压;正确关断时,外管先关使电流经内管续流至中点,避免电压过冲;若内管先关,电流路径被强制切断,杂散电感引发高压尖峰击穿器件。这一时序本质是为电流提供低应力续流路径,需通过硬件或软件严格保障。 阅读详情

给定n个非负整数a1,a2,…,an,其中每个数字表示坐标(i, ai)处的一个点。以(i,ai)和(i,0)(i=1,2,3...n)为端点画出n条直线。你可以从中选择两条线与x轴一起构成一个容器,最大的容器能装多少水?
注意:你不能倾斜容器
 

例如:

输入 [1,8,6,2,5,4,8,3,7]
输出: 49

思路:
从左到右,获取最大容量,求容量的时候是用最小值,移动左右边是最大的不动,最小的左右移动。

package main

/**
  * 
  * @param height int整型一维数组 
  * @return int整型
*/
func maxArea( height []int ) int {
    // write code here
    left := 0
	right := len(height) - 1
	max := 0
	for left < right {
		minHeight := 0
		if height[left] < height[right] {
			minHeight = height[left]
		} else {
			minHeight = height[right]
		}
		if minHeight*(right-left) > max {
			max = minHeight * (right - left)
		}
		if height[left] < height[right] {
			left++
		} else {
			right--
		}
	}
	return max
}

高频面波成像实战:从频散曲线到全波形反演 面波勘探是近地表工程勘察的重要手段,其核心原理在于不同频率的面波对地下介质的敏感深度不同,由此形成的频散曲线能够反映浅层剪切波速结构。相较于传统钻探与折射波法,高频面波成像具有无损、高效、对低速夹层敏感等优势,广泛应用于路基检测、空洞探测、滑坡调查等领域。在实际工程中,从野外采集的排列设计、震源选型,到频散谱提取与频散曲线反演,每一步都直接影响成像精度。然而频散反演受限于一维层状假设,难以刻画横向剧烈变化的地质体。全波形反演通过拟合完整波形信息,能够突破频散曲线的分辨率边界,获得更精细的近地表速度模型。本文 阅读详情

相关推荐

从零玩转GD32单片机CAN总线:手把手实战配置与源码解析

本文提供了一份基于GD32单片机的CAN总线实战入门指南。从硬件连接(GD32F103C8T6与TJA1050收发器)到软件配置,详细解析了CAN初始化、波特率计算、过滤器设置及中断收发等核心源码。通过手把手的回环测试示例与常见问题排查,帮助开发者快速掌握CAN总线通信的关键配置与调试技巧。

g5h6i7j的博客 481

leetcode11. 盛最多水的容器,双指针法

leetcode11.盛最多水的容器,双指针法

热爱C++和golang的学生 1389

【C++】auto关键字(C++11,超详细解析,小白必看系列)

本文详细解析了C++中的“auto”关键字,介绍了其定义、基本用法、限制和高级用法,特别是与范围for循环和Lambda表达式结合的应用。

m0_73494049的博客 6万+

力扣11--盛最多水的容器问题Go语言实现

摘要 本文解决了寻找容器最大盛水量的问题。给定表示垂线高度的数组,采用双指针法从两端向中间遍历:初始化左右指针,计算当前面积(宽度×较小高度),更新最大面积后移动高度较小的指针。该方法时间复杂度O(n),空间复杂度O(1)。示例中数组[1,8,6,2,5,4,8,3,7]的最大盛水量为49。核心策略是始终移动较矮的边,以可能获得更高的补偿。

2502_93365655的博客 793

SAP交货单增强字段更新实战:手把手教你用BAPI_OUTB_DELIVERY_CHANGE和EXTENSION2参数

本文详细解析了如何使用BAPI_OUTB_DELIVERY_CHANGE和EXTENSION2参数实现SAP交货单增强字段的更新。从增强点SMOD_V50B0001的定位到字段落表的全流程,提供了ABAP代码示例和常见问题排查方法,帮助开发者高效完成交货单自定义字段的集成开发。

weixin_42525637的博客 452

黑群晖断电后存储池‘已损毁’?别慌,SSH里这几条命令能救急

本文详细解析黑群晖断电后存储池显示‘已损毁’的紧急修复方法。通过SSH命令行工具,提供从诊断到修复的完整流程,包括RAID阵列重新组装、设备重建等关键步骤,帮助用户恢复数据访问。适用于因意外断电导致的存储池异常情况。

weixin_42651748的博客 375

【力扣Leetcode题解系列之0011—Container With Most Water 盛最多水的容器:多语言实现与拓展】

本文介绍了LeetCode中"盛最多水的容器"和"整数转罗马数字"两道题目的解法与拓展。 对于"盛最多水的容器"问题,重点分析了双指针法的解题思路,该方法通过左右指针向中间移动的策略,将时间复杂度优化至O(n)。文章提供了Python、Java、C、C++和Go五种语言的实现代码,并进行了算法复杂度分析。此外还提出了三维容器、可变挡板高度等扩展问题,以及资源分配、图像处理等实际应用场景。

youngerwang的博客 732

利用netmq在相机应用于unity之间传输图像数据

Unity工业相机接入方案解析 本文探讨了在Unity中接入不同品牌工业相机的技术方案。研究发现: Basler相机可直接调用官方DLL(pylonc.net.dll)实现接入 海康和大恒相机因驱动DLL依赖C++组件,无法直接调用 解决方案:通过独立进程(相机应用程序)与Unity进行通信,采用NetMQ实现图像数据传输 技术实现要点: 相机端:使用PublisherSocket发布JPEG图像帧 Unity端:通过SubscriberSocket订阅图像数据 优化:设置高水位线控制缓存帧数,避免数据堆积

weixin_46450859的博客 417

leetcode 11.盛最多水的容器 golang实现

描述 给定 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。 ...

tzh_linux的专栏 277

【从零开始入门unity游戏开发之——C#篇37】进程、线程、C# 中实现多线程有多种方案和async/await异步编程

进程、线程、C# 中实现多线程有多种方案和async/await异步编程

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 1469

STM32外部中断EXTI原理与飞控实时应用实战

外部中断(EXTI)是嵌入式系统中实现事件驱动和实时响应的核心机制,其本质是将外部电平变化转化为可调度的CPU中断事件。基于ARM Cortex-M NVIC架构,EXTI通过GPIO-EXTI-NVIC三级硬件通路实现低延迟信号捕获,具备边沿触发、优先级管理与挂起控制等关键能力。在四轴飞控、工业传感器、人机交互等对毫秒级响应有强需求的场景中,EXTI显著优于轮询方式,兼顾实时性与CPU资源效率。实际开发需严格遵循SYSCFG映射→EXTI配置→NVIC使能的时序逻辑,并规避常见陷阱如中断号误配、伪触发、低

weixin_36382073的博客 65

Leetcode 11:盛最多水的容器[CPP][GO]

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

KongJHong的博客 251

2024阅读AOSP源码的正确打开姿势

在Android系统开发中,阅读AOSP(Android Open Source Project)源码是非常重要的环节。然而,如何构建一个优雅的阅读环境却是一个不容忽视的问题。本文将介绍不同工具和方法下阅读AOSP源码的正确姿势,并对比其优缺点。

虎哥LoveDroid 2706

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] 输出:4......

梦~' 347

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

【LeetCode】11. 盛最多水的容器 - Go 语言题解

本文给出了 LeetCode 11. 盛最多水的容器 的 Go 语言题解

weixin_44211968的博客 499

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

【Golang 刷题之路】转世重修第十一题:盛最多水的容器

盛最多水的容器作为面试常考题目,是Leetcode的第十一题,通过日常生活类比生成算法题目,来考验做题者的理解能力与应变能力。同样的双指针题,与无重复的子串确实两种不同的解题思路,我们需要以不变应万变,才能真正在面试中脱颖而出。

猫轻王的博客 327

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

用go实现-盛最多水的容器

摘要: 题目要求在整数数组height中找到两条垂直线,使其与x轴构成的容器盛水最多。盛水量由宽度(两线距离)和高度(较矮线的高度)决定。采用双指针法:初始化左右指针分别指向数组首尾,计算当前面积并更新最大值,移动较矮一侧的指针向中间靠拢。时间复杂度O(n),空间复杂度O(1)。示例输入[1,8,6,2,5,4,8,3,7]输出49,证明算法高效。

2402_84347832的博客 354

【每日一道算法题 day5】盛最多水的容器 (Container With Most Water) - LeetCode 题解

盛最多水的容器 (Container With Most Water) - LeetCode 题解。给定一个长度为 `n` 的整数数组 `height`,其中 `n` 条垂线的两个端点分别是 `(i, 0)` 和 `(i, height[i])`。找出两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水,返回容器可以储存的最大水量。

minton 894

leetcode 热题思路解析-乘最多水的容器

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

m0_59896206的博客 831

LeetCode(golang):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。 示例...

光九的博客 303

leetcode每日一题 盛最多水的容器(java,golang)

package main import "fmt" func main() { var height = []int{1, 8, 6, 2, 5, 4, 8, 3, 7} fmt.Println("ans =", maxArea(height)) } func min(a, b int) int { if a > b { return b } else { return a } } func maxArea(height []int) int { var area int

chen_haoren的博客 219

算法leetcode|11. 盛最多水的容器(rust重拳出击)

给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明: 你不能倾斜容器。

二当家的白帽子 1332

11.盛最多水的容器

我们使用left和right当做左右挡板,用res记录最大蓄水量,于是我们只需要遍历一遍数组便可得到结果。时间复杂度是O(n),而且也没有使用额外空间,空间复杂度是O(1)。right表示右边挡板的位置,left表示左边挡板的位置。蓄水容量应为左右挡板的最小高度(短板效应hhhh)乘以他们之间的距离,也就是right-left。因为从公式中我们可以看出,蓄水面积只和两个挡板中最小高度的挡板有关。当然是移动最小高度的挡板,继续寻找是否有能存储更多水的方案。轴共同构成的容器可以容纳最多的水。

weixin_44377341的博客 420

【LeetCode Hot 100】Go语言题解:11. 盛最多水的容器(双指针法的优雅演练)

双指针法高效解决盛水容器问题。通过初始化首尾指针,计算当前面积并移动较短边指针,逐步缩小搜索空间。这种贪心策略能在O(n)时间内找到最大面积,避免暴力枚举的O(n²)复杂度。关键点在于每次移动短边指针以寻找可能的更大高度,从而弥补宽度减小带来的面积损失。示例代码展示了Go语言的实现,直观体现了双指针法的简洁高效。

m0_57949696的博客 600

【力扣打卡系列】滑动窗口与双指针(盛最多水的容器)

坚持按题型打卡&刷&梳理力扣算法题系列,语言为go,Day3。

qq_45734745的博客 636

GO 力扣 11.盛最多水的容器

盛最多水的容器 这道题要求的就是两个柱子围城的最大的矩形 这个题只需要我们枚举一下两个指针,每一次将矮的那一侧的指针向中移动,然后计算一下最大值,直到指针相交。 代码如下: func maxArea(height []int) int { i:=0 j:=len(height)-1 ans:=0 for i<j { ans=max(ans,(j-i)*min(height[j],height[i]) ) Min(&i,&j

Onebelieve_lxl的博客 346
上一篇: 《leetcode-go》环形路加油站
下一篇: 《leetcode-go》数组中相加和为0的三元组
less_cold
博客等级 码龄10年 40粉丝 364原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值