问题描述

给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。
说明:你不能倾斜容器,且 n 的值至少为 2。

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

示例:

输入:[1,8,6,2,5,4,8,3,7]
输出:49

算法思想

由图很容器计算出一个容器能够容纳水的面积,也就是两个垂直线之间的横向距离乘以较短的垂直线的高度。这样的话,我们只需遍历每种情况,然后在其中选出最大的那一个容器面积即可。

代码实现

public int maxArea(int[] height) {int result=-1;        //保存最终的结果,最多水的容积int min_tmp=0;      //保存两条线中的最短的那条垂直线,用于计算矩形的宽int area_tmp=-1;  //保存计算出来的临时面积for(int i=0;i<height.length;i++){for(int j=i+1;j<height.length;j++){//前两步用公式求得其面积min_tmp=height[i]<height[j]?height[i]:height[j];area_tmp=min_tmp*(j-i);//查看这个面积是不是当前找到的最大面积if(area_tmp>result){result=area_tmp;}}}return result;}

leetcode题解8-盛最多水的容器相关推荐

  1. leetcode最小面积_每日一道 LeetCode (51):盛最多水的容器

    ❝ 每天 3 分钟,走上算法的逆袭之路. ❞ 前文合集 每日一道 LeetCode 前文合集 代码仓库 GitHub:https://github.com/meteor1993/LeetCode Gi ...

  2. 每日一道 LeetCode (51):盛最多水的容器

    每天 3 分钟,走上算法的逆袭之路. 前文合集 每日一道 LeetCode 前文合集 代码仓库 GitHub: https://github.com/meteor1993/LeetCode Gitee ...

  3. 算法leetcode|11. 盛最多水的容器(rust重拳出击)

    文章目录 11. 盛最多水的容器: 样例 1: 样例 2: 提示: 原题传送门: 分析 题解 rust go c++ java typescript python 11. 盛最多水的容器: 给定一个长 ...

  4. 【LeetCode】1. 盛最多水的容器:C#三种解法

    题目:https://leetcode-cn.com/problems/container-with-most-water/ 盛最多水的容器 难度:中等 给你 n 个非负整数 a1,a2,...,an ...

  5. leetcode系列-11.盛最多水的容器

    leetcode系列–第11题.盛最多水的容器 给定一个长度为 n 的整数数组 height .有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) .找出其中的两 ...

  6. LeetCode实战:盛最多水的容器

    题目英文 Given n non-negative integers a1, a2, -, an, where each represents a point at coordinate (i, ai ...

  7. leetcode算法题--盛最多水的容器

    原题链接:https://leetcode-cn.com/problems/container-with-most-water/ 双指针 class Solution {public:int maxA ...

  8. 算法题解(Leetcode 11、15、17、19、20:盛最多水的容器、三数之和、电话号码的字母组合、删除链表的倒数第 N 个结点、有效的括号)

    文章目录 [11. 盛最多水的容器 - 中等 - 9/7](https://leetcode-cn.com/problems/container-with-most-water/) [15. 三数之和 ...

  9. [贪心|双指针] leetcode 11 盛最多水的容器

    [贪心|双指针] leetcode 11 盛最多水的容器 1.题目 题目链接 给你 n 个非负整数 a1,a2,-,an,每个数代表坐标中的一个点 (i, ai) .在坐标内画 n 条垂直线,垂直线 ...

  10. LeetCode.M11.盛最多水的容器

    LeetCode.M11 题目: 题目大意: ​ 如图所示. 数据范围: 如图所示 思路: ​ 采用双指针,所容纳的水为min(h[l], h[r]) * (r - l) ,初始时l = 0,r = ...

最新文章

  1. 概率论中指数分布介绍及C++11中std::exponential_distribution的使用
  2. Error in **: incorrect number of subscripts on matrix
  3. 2003:个人知识管理实施
  4. python中如何快速判断一个值是否大于、小于、等于某个值?
  5. windows环境里React-Native运行失败,找不到Nullable的原因分析
  6. 无线网络共享到CM3计算板调试时 connect: Network is unreachable
  7. maven:Exception in thread main java.lang.UnsupportedClassVersionError: org/apache/maven/cli/MavenC
  8. input美化上传按钮美化
  9. to_char和to_date的用法详解
  10. Oracle-并行多线程和视图view的应用
  11. Linux下重启tomcat
  12. 计算机统考408答题卡什么样,提醒:考研初试答题卡长这样,正确填涂,避免丢分!...
  13. 支付宝小程序导航栏背景颜色全部更换和单个更换
  14. 基于存储卡的音乐播放器0.6
  15. 我酸了,曝光几个腾讯 阿里P8前同事的副业收入
  16. Mysql工作原理介绍
  17. 我想转行程序员,上个编程培训班,能找到工作吗?我可以自学吗?
  18. 无人机领域重大进展,即将实现空中充电
  19. 香港中文大学(深圳)招收全奖博士/研究助理/博后
  20. 公司企业所得税高如何有效做好税收筹划

热门文章

  1. 可穿戴的手机!努比亚nubia-α国行版将于4月8日正式发布
  2. iQOO手机发布后 黑鲨游戏手机CEO吴世敏:黑鲨2 稳了
  3. 软件自动化测试面试三部曲:第三是经验,第二是技术,第一是...
  4. 继承/作⽤域/作⽤域链
  5. linux上部署最新版本zookeeper伪分布式集群
  6. Mysql的两种存储引擎以及区别
  7. Socket通信之TCP拆包和封包
  8. oracle清理表空间文件,如何自动删除表空间的文件?
  9. 我的一些学习经验:ONVIF
  10. YUV格式学习:YUV444转换RGB24