上海知名网站建罗湖商城网站设计制作

张小明 2026/1/19 20:50:05
上海知名网站建,罗湖商城网站设计制作,wordpress栏目图标,北京集团公司注册流程思路#xff1a;这道题无法使用分治法和动态规划法#xff0c;要想得到O(n)的解法只能使用双指针。1.本题中双指针的含义#xff1a;指针每一次移动#xff0c;都意味着排除掉了一个柱子。2.举例#xff1a;#xff08;1#xff09;如下图所示#xff0c;在一开始考虑相…思路这道题无法使用分治法和动态规划法要想得到O(n)的解法只能使用双指针。1.本题中双指针的含义指针每一次移动都意味着排除掉了一个柱子。2.举例1如下图所示在一开始考虑相距最远的两个柱子所能容纳水的面积。水的宽度是两根柱子之间的距离d 8水的高度取决于两根柱子之间较短的那个即左边柱子的高度h 3。因此水的面积为3×824。2如果选择固定一根柱子另外一根变化水的面积会如何变化a当前柱子是最两侧的柱子水的宽度d为最大其他的组合水的宽度都比这个小。b左边的柱子较短决定了水的高度为3。如果移动左边的柱子新的水面高度不确定但一定不会超过右边柱子的高度7。c如果移动右边的柱子新的水面高度一定不会超过左边柱子的高度3也就是不会超过现在水面的高度。3过程推导a由2推理可知如果固定左边的柱子移动右边的柱子那么水的高度一定不会增加且宽度一定减少所以水的面积一定减少。因此左边柱子和任意一个其他柱子的组合都可以排除了。因此可以排除掉左边的柱子了。b同理若右边的柱子更小那么右边柱子和任意一个其他柱子的组合都可以排除了。因此可以排除掉右边的柱子了。c随着不断的排除i和j都会往中间移动当i和j相遇时算法就结束了。3.图解双指针解法的原理1排除掉一根柱子指针移动究竟代表着什么假设一共有n根柱子编号01...n - 1。高度分别为H0、H1、...、Hn - 1。要寻找的是两根柱子i,j它们需要满足的约束条件是——i、j都是合法的柱子下标即0in0jn。——i在j的左边即i j。2希望从中找到容纳水面积最大的柱子i,j以n 8为例这时候全部的搜索空间为3由于i、j的约束条件的限制搜索空间是白色的倒三角部分。可以看到搜索空间大小是O(n^2)数量级的。如果用暴力解法求解一次只检查一个单元格那么时间复杂度一定是O(n^2)。要想得到O(n)的解法就需要能够一次排除多个单元格。4一开始先检查右上方的单元格0,7即考虑最左边的0号柱子和最右边的7号柱子计算它们之间容纳水的面积然后比较一下两根柱子的高度关注其中较短的一根。5假设左边的0号柱子较短根据推理0号柱子目前的水面高度已经到了上限。因此排除0号柱子的情况也就是i 0的情况对应i就是削减了一行的搜索空间。6排除了搜索空间的一行后剩余的搜索空间仍然是倒三角形状。检查右上方的单元格1,7即考虑1号柱子和7号柱子计算它们之间容纳水的面积。然后比较两根柱子的高度。7假设此时7号柱子较短此时要排除7号柱子的情况对应j--就是削减了一列的搜索空间。8经过n步后就能排除掉所有的搜索空间检查完所有的可能性。附代码class Solution { public int maxArea(int[] height) { int res 0; int i 0; int j height.length - 1; while(i j){ int canContain (j - i) * Math.min(height[i],height[j]); res Math.max(res,canContain); if(height[i] height[j]){ i; }else{ j--; } } return res; } }
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

织梦网站后台管理教程南通网站建设方案服务

图片转 ppt,实现可编辑效果演示完整代码更复杂的图形icon针对图标的新版本效果演示 输出后: 只需要手动修订一下箭头了,工作量减少了,不用自己纯手打(2小时) 完整代码 大模型只能选用 gemini-3-pro-previe…

张小明 2026/1/17 20:58:08 网站建设

新手入门网站建设书籍wordpress文体旋转

零基础也能学会:小白入门 Anything-LLM 图文教程 在信息爆炸的时代,我们每天都在面对堆积如山的文档——合同、报告、技术手册、会议纪要……想找点内容,翻来覆去却总找不到。而大模型虽然能“聊天”,但一问具体文件里的事&#…

张小明 2026/1/17 20:58:10 网站建设

电子商务网站建设不足厦门装修公司网站建设

BG3SE完整指南:从入门到精通的全方位教程 【免费下载链接】bg3se Baldurs Gate 3 Script Extender 项目地址: https://gitcode.com/gh_mirrors/bg/bg3se 想要彻底改变你的博德之门3游戏体验吗?BG3SE(博德之门3脚本扩展器)作…

张小明 2026/1/17 20:58:10 网站建设

免费网站建设排行表WordPress友情链接添加

1.并行集合 1.并行集合 a.在C#中, 并行集合(Concurrent Collections)是.NET 为多线程/并行编程设计的线程安全集合b.位于System.Collections.Concurrent命名空间, 专门解决普通集合(如List<T>、Dictionary<TKey, TValue>)在多线程读写时的线程安全问题(普通集合非…

张小明 2026/1/17 20:58:11 网站建设

模板建站服务公司要个网站

WindowResizer终极指南&#xff1a;完全掌控窗口尺寸的专业工具 【免费下载链接】WindowResizer 一个可以强制调整应用程序窗口大小的工具 项目地址: https://gitcode.com/gh_mirrors/wi/WindowResizer WindowResizer是一款专业的窗口调整工具&#xff0c;能够帮助你轻松…

张小明 2026/1/17 20:58:12 网站建设

这么做网站教程长沙网站维护

LangFlow地方志资料智能提取工具设计 在文化遗产数字化浪潮中&#xff0c;地方志文献的智能化处理正面临前所未有的机遇与挑战。这些记录着千年地域变迁、人物兴衰的文本&#xff0c;往往以非结构化的形式沉睡于档案馆与图书馆之中——语言古奥、格式杂乱、篇幅浩繁。传统人工摘…

张小明 2026/1/17 20:58:13 网站建设