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

力扣---11. 盛最多水的容器

时间:2023-02-16 20:48:16浏览次数:33  
标签:p2 --- p1 容器 int max height 力扣 最多水

给定一个长度为 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
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/container-with-most-water
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。


双指针法,面积由最小的高度决定,所以每次只移动高度更小的那个指针即可。

主要还是数学。

class Solution {
    public int maxArea(int[] height) {
        int max = 0;
        int p1 = 0;
        int p2 = height.length - 1;
        while (p1 < p2) {
            
            if (height[p1] < height[p2]) {
                max = Math.max(max, (p2 - p1) * height[p1]);
                p1 ++;
            } else {
                max = Math.max(max, (p2 - p1) * height[p2]);
                p2 --;
            }
        }
        return max;
    }
}

 

标签:p2,---,p1,容器,int,max,height,力扣,最多水
From: https://www.cnblogs.com/allWu/p/17128208.html

相关文章

  • javascript 高级编程系列 - async/await
    async/await其实是生成器的语法糖,async用于声明一个函数是异步的,而await用于等待一个异步方法执行完成,并且await只能出现在async函数中。1.async函数async函数返回一......
  • B2066 救援--解题思路
    救援救援题目描述救生船从大本营出发,营救若干屋顶上的人回到大本营,屋顶数目以及每个屋顶的坐标。和人数都将由输入决定,求出所有人都到达大本营并登陆所用的时间。在直......
  • Vue急速入门-3
    内容概要购物车小练习<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title><scriptsrc="vue/vue.js"></script><......
  • Vue项目安装less和less-loader
    第一步:查看webpack和webpack-cli是否安装打开cmd,通过命令查看webpack-vwebpack-cli-v   如果没有安装,要先进行安装可以通过npmviewwebpackversion/npm......
  • v-if和v-show的区别
    v-if和v-show都是vue框架中的指令,它们的作用都是控制元素的显示和隐藏,区别在于:v-if是创建和删除元素,而v-show只是改变元素中的display样式属性。那什么时候需要用v-if,什么......
  • 狂神--ElasticSearch
    一、ElasticSearch概述官网:https://www.elastic.co/cn/downloads/elasticsearchElaticsearch,简称为es,es是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储......
  • MySQL--索引的数据结构
    1.为什么使用索引索引是存储引擎用于快速找到数据记录的一种数据结构,就好比一本教科书的目录部分,通过目录中找到对应文章的页面,便可以快速定位到需要的文章,mysql中也是一......
  • JavaScript 基础 - Day01
    了解变量、数据类型、运算符等基础概念,能够实现数据类型的转换,结合四则运算体会如何编程。体会现实世界中的事物与计算机的关系理解什么是数据并知道数据的分类理解......
  • B2006 地球人口承载力估计--解题思路
    地球人口承载力估计地球人口承载力估计题目描述假设地球上的新生资源按恒定速度增长。照此测算,地球上现有资源加上新生资源可供\(x\)亿人生活\(a\)年,或供\(y\)亿......
  • QT基础学习 - 总结
    一、学习规划与必要知识点总结1、QT的下载与安装;1)下载:进入官网,下载QT在线下载工具(QT5.15后都必须在线下载):2)安装参考博客: a. (86条消息)Windows10在线安装Qt5.15和......