当前位置: 首页 > wzjs >正文

像美团这种网站怎么做的个人新闻类网站模板免费下载

像美团这种网站怎么做的,个人新闻类网站模板免费下载,网站如何关闭,职业技能培训班力扣11. 盛最多水的容器:双指针法详解 一句话点明白你 被官方题解的一位大佬的评论点醒,在这里分享给大家:**我们left和right–都是为了尝试取到更多的水,如果短的板不动的话,取到的水永远不会比上次多。**你品&…

力扣11. 盛最多水的容器:双指针法详解

一句话点明白你

被官方题解的一位大佬的评论点醒,在这里分享给大家:**我们left++和right–都是为了尝试取到更多的水,如果短的板不动的话,取到的水永远不会比上次多。**你品,你细品!!

题目描述

给定一个长度为 n 的整数数组 height,表示垂直线的长度。找到两条垂线,使得它们与 x 轴共同构成的容器能容纳最多的水。返回容器的最大储水量。

示例

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

解法思路:双指针法

核心思想

容器储水量由 宽度较短板的高度 共同决定。双指针法从数组两端向中间移动,每次移动较短的边,通过缩小宽度来寻找更高的板,从而探索更大的储水量。

正确性证明

  • 贪心策略:移动较短的边可能使高度增加,而移动较长的边只会减少宽度且高度不会超过原短板。
  • 数学保证:每次移动后,虽然宽度减小,但保留更长的边有机会找到更高的短板,从而弥补宽度损失。

算法步骤

  1. 初始化指针:左指针 left = 0,右指针 right = height.length - 1
  2. 循环计算
    • 计算当前容器的储水量:面积 = min(height[left], height[right]) * (right - left)
    • 更新最大储水量。
    • 移动较短的边的指针(左指针右移或右指针左移)。
  3. 终止条件:当 left == right 时结束循环。

代码实现

public static int maxArea(int[] height) {int left = 0;                   // 左指针int right = height.length - 1;  // 右指针int res = 0;                    // 最大储水量while (left < right) {// 计算当前容器的储水量int currentRes = Math.min(height[left], height[right]) * (right - left);res = Math.max(res, currentRes);// 移动较短的边的指针if (height[left] < height[right]) {left++;} else {right--;}}return res;
}

力扣通过截图

在这里插入图片描述

复杂度分析

  • 时间复杂度:O(n),只需一次遍历数组。
  • 空间复杂度:O(1),仅使用常量额外空间。

示例解析

以输入 height = [1,8,6,2,5,4,8,3,7] 为例:

步骤leftright短板高度宽度面积最大面积移动方向
108181×8=88左→右
218777×7=4949右→左
317363×6=1849右→左
49

最终最大储水量为 49,由左指针 1(高度 8)和右指针 8(高度 7)组成的容器获得。


边界情况处理

  • 全零数组:所有高度为 0,储水量始终为 0。
  • 所有高度相同:储水量由宽度决定,初始宽度最大。
  • 单峰/双峰分布:双指针法能正确找到最大容器。

总结

  • 双指针法的优势:通过一次遍历高效解决问题,避免暴力法的 O(n²) 复杂度。
  • 关键思想:移动较短的边以探索更高的板,确保不漏掉更大储水量的可能性。

相似问题

  • 42. 接雨水
  • 15. 三数之和

掌握双指针法的移动策略,能有效解决数组中的区间最优问题!


文章转载自:

http://FqfcgiRZ.kstLm.cn
http://54ZLtBSr.kstLm.cn
http://3dChPwYE.kstLm.cn
http://YxJrJY6D.kstLm.cn
http://409ygAUJ.kstLm.cn
http://HP2BxBcf.kstLm.cn
http://hnRsTckY.kstLm.cn
http://pt87IjU2.kstLm.cn
http://erFmyaZo.kstLm.cn
http://L1vlS3k8.kstLm.cn
http://M5SPPLdP.kstLm.cn
http://5GV9HM6l.kstLm.cn
http://58l5VS6A.kstLm.cn
http://Yj2Eric9.kstLm.cn
http://zqtC5FYm.kstLm.cn
http://JfAhrZ4X.kstLm.cn
http://YiI3L41S.kstLm.cn
http://q88WDkCa.kstLm.cn
http://NQMVzH9P.kstLm.cn
http://f57LzuRy.kstLm.cn
http://xkIqouLj.kstLm.cn
http://60yNxRfd.kstLm.cn
http://i7o4atAv.kstLm.cn
http://x52ht6nf.kstLm.cn
http://2lxP6AvN.kstLm.cn
http://w4UDRTXl.kstLm.cn
http://xXNaJV8w.kstLm.cn
http://NneAthgj.kstLm.cn
http://LxlrLA3a.kstLm.cn
http://sIhZP06Q.kstLm.cn
http://www.dtcms.com/wzjs/761225.html

相关文章:

  • 岳阳市规划局建设工程公示网站关键词挖掘站长
  • 怎么打开网站去除wordpress阅读更多字段
  • 佛山建网站哪里好网站域名申请好了怎么建设网站
  • 南通网站建设排名公司怎么做家政的网站
  • 怎么做服装外贸网站郴州网
  • 电子商务网站建设教学实施建设外贸网站营销推广
  • 网站建设实验感想相城区网站建设
  • 网络管理系统怎么打开连云港seo优化
  • 网站建设经费预算网页设计与制作课程建设规划
  • 花店网站建设规划书创建网站销售产品
  • 深圳整站优化云南app开发制作
  • 08 iis创建网站公司徽标设计图片
  • 西安app开发公司排名网站建设及优化心得体会
  • 做家政网站求人做网站
  • 杭州画廊网站建设台州网站关键字优化
  • 网站开发项目组成员软件开发属于技术服务吗
  • 市工商局网站建设情况知名建筑类的网站
  • 做网站中心图片软件制作工具
  • 班级网站建设方案企业网站营销的优缺点
  • 中交建设集团网站科技画4k纸科幻画
  • 成都公司网站如何用虚拟主机做网站
  • 教学类网站开发软件外包公司
  • 网站建设与管理ppt模板下载加强网站建设的意义
  • 做电池的外贸网站天空建筑网站
  • wordpress设置视频台州百度搜索优化
  • app ui设计网站全球最大源码共享网站
  • 石家庄做网站汉狮网络上海建设银行官方网站
  • asp网站数据库扫描会员卡管理系统怎么开通
  • 网站seo资讯大连网站制作团队
  • 网站描述案例asp.net网站开发百科