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

1cpu0.5g服务器用来做网站会计培训机构

1cpu0.5g服务器用来做网站,会计培训机构,html5主题 wordpress,张家港网站seoleetcode 11 思路 问题分析 拆解问题,面积 底 * 高 宽度:两个竖直线之间的距离,显然是 right - left高度:容器的水位受限于较短的那根竖直线的高度,所以高度为 min(height[left], height[right]) 本题其实很容易…

leetcode 11
在这里插入图片描述

思路

问题分析

拆解问题,面积 = 底 * 高

  • 宽度:两个竖直线之间的距离,显然是 right - left
  • 高度:容器的水位受限于较短的那根竖直线的高度,所以高度为 min(height[left], height[right])

本题其实很容易想到暴力解法,通过双重遍历,计算每一对竖直线所能形成的容器的面积,并记录最大面积。但这种方法的时间复杂度是 O(n²),效率较低,并且无法在leetcode中通过

优化解法-双指针法
  • 由于容器的面积受制于最短的那根竖直线,所以优化的关键在于动态调整左右指针的指向,跳过不必要的比较
  • 我们使用双指针的方式,初始化 left 指针在数组的开头,right 指针在数组的末尾,计算当前容器的面积:
    • 如果 height[left] < height[right],则移动 left 指针,目的是尝试找到一个更高的左边竖直线,增加可能的面积。
    • 如果 height[left] >= height[right],则移动 right 指针,尝试找到一个更高的右边竖直线。
  • 每次移动指针时,都会计算并更新最大面积
为什么双指针法有效
  • 双指针法通过始终选择最短的竖直线来决定移动哪一边指针。因为较短的那根竖直线是面积的瓶颈,只有尝试替换较短的线,才能可能增加容器的面积
  • 如果我们不这么做,选择较长的线是没有意义的,因为更短的那条线限制了容器的容量

实现

var maxArea = function (height) {let left = 0, right = height.length - 1;let max = 0;while (left < right) {let min = Math.min(height[left], height[right])const area = (right - left) * min;max = Math.max(max, area)if (min === height[left]) {// 左边值更小left++} else {right--}}return max;
};
http://www.dtcms.com/wzjs/9450.html

相关文章:

  • 国务院建设主管部门网站哈尔滨百度公司地址
  • 济南网站建设套餐网络营销的目的和意义
  • 无聊网站建设产品软文范例大全
  • 做瞹瞹视频电影邪恶网站seo搜索引擎优化是什么
  • 村级网站建站广州网站快速排名
  • wordpress主题cute网络推广seo
  • wordpress微信关注查看朝阳网站seo
  • 帝国cms网站迁移热门推广平台
  • 邵阳做网站的有哪些域名解析网站
  • 东莞手机网站制作引流客户的最快方法是什么
  • 化工课设代做网站论文收录网站排名
  • 企业所得税税率2022年最新税率表谷歌seo搜索引擎优化
  • 西宁市网站建设价格app推广软件
  • 大数据在营销中的应用优化关键词的方法有哪些
  • 深圳罗湖高端网站建设怎么建网站教程
  • 罗田企业网站建设网站安全
  • 用dw做网站的视频站长工具seo词语排名
  • 我做推广找不到我的网站百度推广客户端下载安装
  • 中日韩精品电影推荐网站微软优化大师
  • 优秀的网页设计网站google搜索引擎免费入口
  • 专门做牛肉的网站阿里巴巴怎么优化关键词排名
  • 建外贸网站推广如何制作微信小程序
  • 深圳做网站推广公司互联网营销模式有哪些
  • 装修平台哪个最好正规seo关键词排名哪家专业
  • web网站建设方案国内最新的新闻
  • 政府网站建设概况杭州百度百科
  • 拱墅网站建设黄页网站推广公司
  • 用php做的网站百度手机怎么刷排名多少钱
  • 酷播wordpressseo推广哪家服务好
  • 网站建设合同范本下载比百度好用的搜索软件手机版