首页 > 其他分享 >11. 盛最多水的容器

11. 盛最多水的容器

时间:2022-09-01 13:33:22浏览次数:63  
标签:11 容器 return cur int height 最多水

11. 盛最多水的容器

给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。

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

返回容器可以储存的最大水量。

说明:你不能倾斜容器。

 

示例 1:

输入:[1,8,6,2,5,4,8,3,7]
输出:49 
解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。

示例 2:

输入:height = [1,1]
输出:1

 

提示:

  • n == height.length
  • 2 <= n <= 105
  • 0 <= height[i] <= 104

暴力解法超时,改用双指针

func maxArea(height []int) int {
    i, j := 0, len(height) - 1
    m := 0
    for i < j {
        cur := (j - i) * min(height[i],height[j])
        if cur > m {
            m = cur
        }

        if (height[i] < height[j]) {
            i++
            continue
        }
        j--
    }
    return m
}

func min(x, y int) int {
    if x > y {
        return y
    }
    return x
}

 

标签:11,容器,return,cur,int,height,最多水
From: https://www.cnblogs.com/fulaien/p/16646170.html

相关文章

  • leetcode-11-双指针
    /**<p>给定一个长度为<code>n</code>的整数数组&nbsp;<code>height</code>&nbsp;。有&nbsp;<code>n</code>&nbsp;条垂线,第<code>i</code>条线的两个端点是&nbsp;<cod......
  • 关于docker-环境部署及拉取镜像创建容器的过程记录
    背景:因安全部门要求对特定几台应用主机的进行漏洞及脆弱性扫描,使用的工具需要基于docker环境,即他们提供镜像,让我们创建成容器,于是将整个环境安装及创建docker容器的过程记......
  • Spring框架1——IOC容器
    一 初识IOC。 1.创建一个空项目,导入相关的jar包。在官网下载Spring压缩包,以下与Spring相关的jar包在其libs目录下找到。       2.编写一个User类。......
  • Python自学笔记11-函数的定义和调用
    函数是组织代码的非常有效的方式,有了函数,我们就可以编写大规模的项目。可以说,函数是组织代码的最小单元。Python函数的定义函数是代码封装的一种手段,函数中包含一段可以......
  • [ROS学习]11. 服务数据(srv)的定义与使用
    笔记参考:ROS学习笔记】11.服务数据(srv)的定义与使用内容参考:基于B站ROS公开课:【古月居】古月·ROS入门21讲本节说明前面讲了两个Service模式的例子,分别用到了两种服务......
  • 力扣 110. 平衡二叉树 [基础+优化]
    110.平衡二叉树给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。......
  • 【Java学习Day11】变量种类及命名规范
    变量变量是什么:就是可以变化的量Java是一种强类型语言,每个变量都必须声明其类型Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域typevarNa......
  • P3514 [POI2011]LIZ-Lollipop
    给定长度为\(n\)的序列,里面的元素为1或2,求是否有一种方案,取出连续的一段,使得到的元素和等于给定的值,若可以则输出一种方案。多组询问,\(n,q\leq10^6\)。感觉有点水,典......
  • docker 容器修改保存
    修改的容器保存命令 语法:dockercommit[OPTIONS]容器ID[REPOSITORY[:TAG]]OPTIONS说明:-a:提交的镜像作者; -c:使用Dockerfile指令来创建镜像; -m:提......
  • 侯捷老师c++11重点
    作者:还有offer嘛链接:https://www.nowcoder.com/discuss/962212?page=3来源:牛客网  •指针、引用、数组、内存•右值引用与完美转发•引用与指针区别•C和......