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

莱芜公司做网站信息流投放

莱芜公司做网站,信息流投放,厦门酒店网站建设,wordpress导航菜单修改Problem: 11. 盛最多水的容器 文章目录 题目解析算法原理讲解复杂度Code 题目解析 首先我们来解析一下本题 题目中说到,要找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 那我们现在来看最外侧的两根,一个高度为8&#…

在这里插入图片描述

Problem: 11. 盛最多水的容器

文章目录

  • 题目解析
  • 算法原理讲解
  • 复杂度
  • Code

题目解析

首先我们来解析一下本题

题目中说到,要找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水

  • 那我们现在来看最外侧的两根,一个高度为8,一个则为7,那我们肯定选择高度为7的,如果选择8的话就会出现溢出的问题;我们这里要求解的是可以容纳多少的水分,所以便要计算的是【容量】,那从第一根柱子到第八根的距离是多少呢?即8 - 1 = 7
  • 所以最后的容量即为7 * 7 = 49

1.jpg

  • 那我们再来看一个,高度取小的那个为6,宽度则取4,所以最后的容积为4 * 6 = 24,比49要来的小,但我们要取的是最大的那一个容量,所以还是取 49

2.jpg

💬 所以对于本题来说,我们初步的想法就是不断地去找两根柱子,然后计算出这两根柱子之间的所围成的容积大小,最后我们所要的则是最大的那一个容积

算法原理讲解

接下去呢我们再来讲解一下本题的算法原理

  • 首先的话来讲解一下第一种方法,那就是我们同学最喜欢使用的【暴力枚举】,因为我们是不断地一一比较,所以直接使用双层for循环去进行实现即可。不过呢这种写法我试了一下是会超时的,所以立马放弃❌

3.jpg

  • 接下去第二种,也是我要进行重点讲解的,那利用单调性,然后使用【双指针】来进行求解。因为我们在对两根柱子不断进行比较的时候,数字都会不停地发生变化,那么这里就会有两个情况:
    • 第一种呢是比较的数字开始出现缩减的情况,即w变小;而且距离也开始缩减,即h变小,那wh都进行缩减的话,最后的乘积[v]也会变得小
    • 第二种的话则是所计算的数据不变,新的数据发生了放大,所以呢h不会缩小,不过距离的话还是会发生缩减,此时整体[v]也会变得小

4.jpg

那根据上面的分析,我们呢可以使用双指针去模拟遍历两个x轴的数据

  • 看到下面我们直接从两侧开始进行计算,那么在计算完得出第一个容量v1后,我们便可以直接舍弃这个【1】,因为其再与任何结合计算都会比【1】与【7】要来得小,原因在于距离会发生一个缩减

5.jpg

  • 那接下去还是一样的思路,我们在使用双指针进行遍历的时候,只需要去判断二者的大小即可,左侧小的话就右移,右侧小的话就左移,然后记录下每一个容量v1v2v3,最后的话再去做一个比较即可

6.jpg

复杂度

  • 时间复杂度:

对于时间复杂度而言,因为我们就是使用左右指针在遍历原先的数组,所以呢复杂度即为 O ( n ) O(n) O(n)

  • 空间复杂度:

因为没开辟多余的空间,所以空间复杂度, 示例: O ( 1 ) O(1) O(1)

Code

以下是代码展示,读者可以根据我上面所分析的思路,自行去书写一下代码

  • 可以看到,我在这里定义两个左右指针leftright,然后呢通过循环去遍历并计算它们两个位子上的数,计算的方法就是我们上面所讲,记住要去不断地更新最大值
  • 当一轮计算完成之后不要忘记去更新leftright。最后当这个循环结束再去返回计算出来的最大值即可。
class Solution {
public:int maxArea(vector<int>& height) {int left = 0, right = height.size() - 1;int ret = 0;while(left < right){int v = min(height[left], height[right]) * (right - left);ret = max(v, ret);      // 更新最大值if(height[left] < height[right])    left++;else    right--;}return ret;}
};

在这里插入图片描述

http://www.hkea.cn/news/623560/

相关文章:

  • c做的网站淄博做网站的公司
  • 网站开发制作公司郑州网站建设外包
  • 注册域名用个人还是公司好长沙seo优化排名
  • 电子商务网站建设与维护展望今日新闻联播
  • 网站建设主流技术站长之家ping检测
  • 温州建设集团有限公司网站首页百度手机版网页
  • 广西网络干部学院官网seo推广人员
  • 可以做红娘的相亲网站江北seo综合优化外包
  • 公司建设网站需要注意什么软文广告示范
  • 高端网站建设 引擎技企业网页
  • 模仿别人网站百度外链查询工具
  • 教程建设网站广告免费发布信息平台
  • wordpress php5.4支持宁波seo排名优化
  • 宁波制作网站哪个好百度怎么发自己的小广告
  • 新浪网站用什么语言做的百度软件下载
  • wordpress如何做网站重庆seo俱乐部联系方式
  • 教育局两学一做网站深圳全网推广平台
  • 淘宝做详情页代码网站免费大数据查询平台
  • 苹果做安卓游戏下载网站好新媒体营销案例ppt
  • 网络营销实务关键词优化seo优化排名
  • 网站推广优化教程游戏代理加盟平台
  • 网站提升权重全国疫情高峰感染进度
  • 营销型网站怎么做智能建站abc
  • 捷信做单官方网站网络服务主要包括什么
  • 网站建设的方案费用什么时候网络推广
  • 这么做3d展示网站公司百度官网优化
  • 工业设计软件上市公司搜索引擎优化的方法
  • 网站建设公司创意网站网络推广推广
  • 浙江三建建设集团有限公司网站关键词的作用
  • 网站建设官方网站教育培训机构加盟十大排名