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

盛最多水的容器

时间:2023-03-01 21:22:09浏览次数:41  
标签:容器 val 最大值 height ans 最多水

盛最多水的容器

给定一个长度为 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
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解题思路

贪心+双指针。

code

class Solution {
public:

    //双指针,贪心
    //左右指针分别指向两端,移动较短的一端
    //为什么是正确的呢?
    //对于短的一端来说,这是短的一端能够取得的最大值
    //最后相当于遍历了所有的短的最大值也即是全部的最大值

    int maxArea(vector<int>& height) {
        
        int l = 0,r = height.size()-1;
        int val,ans = 0;

        while(l < r)
        {
            val = min(height[l],height[r]) *(r - l);
            ans = max(ans,val);
            if(height[l] < height[r]) l ++;
            else r --;
        }

        return ans;
    }
};

标签:容器,val,最大值,height,ans,最多水
From: https://www.cnblogs.com/huangxk23/p/17169869.html

相关文章

  • T3 出行云原生容器化平台实践
    作者:林勇,就职于南京领行科技股份有限公司,担任云原生负责人,也是公司容器化项目的负责人。主要负责T3出行云原生生态相关的所有工作,如服务容器化、多Kubernetes集群建设......
  • Docker 容器将在“docker run -d”后自动停止
    根据我目前阅读的教程,使用“dockerrun-d”将从图像启动一个容器,并且该容器将在后台运行。这就是它的样子,我们可以看到我们已经有了容器ID。root@docker:/home/ro......
  • k8s通过sidecar模式收集pod的容器日志至ELK
    架构:已完成的部署1、ES集群及kibana部署​​https://blog.51cto.com/yht1990/6080981​​2、kafaka+zookeeper集群​​https://blog.51cto.com/yht1990/6081518​​准备side......
  • docker 容器启动报错
    ERROR:JDWPTransportdt_socketfailedtoinitialize,TRANSPORT_INIT(510)JDWPexiterrorAGENT_ERROR_TRANSPORT_INIT(197):Notransportsinitialized[debugI......
  • Containerd是如何存放容器镜像和数据的--overlayfs
    overlayfs是内核支持的文件系统,具体可参考​​overlayfsinkernel​​文档中的解释。overlaylfs是文件系统之上的文件系统。可以称之为上层文件系统。了解虚拟化的同学应该......
  • Docker小工具:runlike与whaler(打印容器的启动命令与导出镜像的dockerfile)
    文章目录https://www.codetd.com/article/14504401runlike:通过容器打印出容器的启动命令方法一:直接通过pip方式安装方法二:通过容器方式免安装使用用法whaler......
  • 微服务架构与小程序容器的结合:多领域应用的利器
    随着移动互联网的发展,小程序已经成为了一种非常流行的应用方式,它可以在不安装任何应用的情况下,直接在移动终端设备(如:App,iPad等)中运行。微服务架构则是一种的分布式系统架......
  • 容器技术认知
    现如今,Docker容器大行其道,容器技术可以看做是沙盒,被装入沙盒的应用可以独立运行,不会互相干扰,也最方便四处搬移。这个沙盒主要用三种技术隔离出来。一、Linuxnam......
  • 学习笔记285—docker 容器基础技术:linux cgroup 简介
    docker容器基础技术:linuxcgroup简介Linuxcgroups的全称是LinuxControlGroups,它是Linux内核的特性,主要作用是限制、记录和隔离进程组(processgroups)使用的物理资......
  • Java容器类List、ArrayList、Vector及map、HashTable、HashMap
    ArrayList和Vector是采用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,都允许直接序号索引元素,但是插入数据要设计到数组元素移动等内存操作,所以索引......