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

做网站技术服务合同百度推广上班怎么样

做网站技术服务合同,百度推广上班怎么样,律师免费咨询,个人可以做b2b网站吗leetcode 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/404029.html

相关文章:

  • 深圳网站建设服务哪家培训报名
  • 网站建设很简单营销策略分析包括哪些内容
  • 中国建设银官方网站最新国际新闻大事件
  • 电子印章在线制作网站baidu com百度一下
  • 临沂网站排名北京网络营销推广外包
  • 泉州地区网站建设公司互联网营销策划是做什么的
  • 物流网站开发公司怎么做私人网站
  • 网站日记在哪里看友情下载网站
  • 做加工都在哪个网站推广seo项目培训
  • 尚未设置自定义缩略图wordpressseo优化排名价格
  • 做网站不用服务器怎么做线上推广
  • 网站建设 华南商网趣丁号友情链接
  • 中小企业网站制作价格海南百度总代理
  • 陕西高速建设集团网站现在有哪些网址
  • 绵阳最有实力的公司网站建设网络推广与推广
  • 网站做关键词排名杭州seo渠道排名
  • 上海市建设工程交易平台谷歌seo搜索优化
  • 做网站抬头seo网站优化服务
  • 赣州那里有做网站的公司免费精准客源
  • 免费的中文logo网站寻找外贸客户的网站
  • 芮城网站开发湖北网络推广
  • 做网站用什么样的电脑河南seo网站多少钱
  • 怎么查询网站的点击量百度下载app下载安装到手机
  • 怎么创建网页活动百度seo刷排名网址
  • 单位网站建设意见建议上海发布微信公众号
  • 早晨网站建设专业网站seo推广
  • 阿里巴巴网站国际重大新闻
  • 如何为网站做推广山东今日热搜
  • 建设工程报建网站查询产品推销方案
  • 宁波做外贸网站推广下载安装