Leetcode 11.乘最多水的容器(字节,快手面试题)

server/2024/12/22 13:21:49/

题目链接:11. 盛最多水的容器 - 力扣(LeetCode)

题目描述:

给定一个长度为 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。

解题思路:双指针

可容纳的最大体积由最小的那个值决定

1.定义左右两个指针分别代表容器最左和最右板

2.首先判断所给数组的长度,若<=1,则直接返回0

3.若==2,说明只有两个元素,宽为1,可容纳体积为,高为最小元素

4.初始化体积为左右指针的较小值为高,宽为左右指针的差值

5.每次判断左右指针指向值的大小,总是为了保证容积的最大值,所以移动指针值小的那一个

代码:

class Solution:def maxArea(self, height: List[int]) -> int:left = 0n = len(height)right = n - 1if n <= 1:return 0if n == 2 :return min(height[0],height[1])max_v = min(height[left],height[right]) * ( n-1 )while left < right :if height[left] < height[right]:left += 1v = min(height[left],height[right]) * (right - left)max_v = max(v,max_v)elif height[right] <= height[left]:right -= 1v = min(height[left],height[right]) * (right - left)max_v = max(v,max_v)return max_v


http://www.ppmy.cn/server/125310.html

相关文章

2.2 HuggingFists中的编程语言

HuggingFists系统提供的可视化流程定义功能与传统的ETL或数据挖掘工具类似。使用者可以通过拖拽&#xff0c;可视化的定义出数据处理的管道(Pipe)或数据分析的图(Graph)。传统上&#xff0c;使用者只是将这种可视化流程定义方式视为一种配置功能而未将其理解为一种编程行为。主…

物流的总结

pc端&#xff08;商家端到仓、冷链&#xff0c;管理端冷链数据&#xff09;、H5、小程序&#xff08;冷链&#xff09; 冷链快运系统介绍文档 替代思路&#xff1a;虚拟列表 介绍:只渲染用户当前可视区域内的列表来提高页面的加载速度和滚动性能,因为后端一次返回的的数据太多…

【ARM 嵌入式 编译系列 10.6 -- ARM toolchain examples】

文章目录 ARM 工具链示例1. arm-none-eabi2. arm-none-linux-gnueabi3. arm-elf-eabi4. arm-elfARM 工具链示例 1. arm-none-eabi 这个工具链的名称可以拆解如下: arm:目标架构是 ARM。none:没有特定的供应商。eabi:遵循 ARM 嵌入式应用二进制接口(EABI)。特点: 目标系…

数据结构 - 查找算法

一.查找的概念 二.顺序表查找 特点&#xff1a; 1.记录的数据可以是无序的 2.当数据量较大时&#xff0c;查找效率低&#xff0c;需要依次遍历 /*** description: 顺序表查找算法&#xff0c;从后往前查找* param - a : 要操作的数组的指针* param - k…

Linux-L11-查看本机ip地址

linux查看ip地址 查看自己的IP地址使用 ip 命令&#xff1a;使用 ifconfig 命令使用 hostname 命令&#xff1a;使用 nmcli 命令 查看某个特定接口的IP查看公网IP地址 在Linux系统中&#xff0c;查看自己的IP地址可以通过多种方式实现&#xff0c;这里提供几种常用的方法&#…

2024全网最为详细的红帽系列【RHCSA-(8)】初级及进阶Linux保姆级别骚操作教程;学不费来砍我[就怕你日后学成黑客了]

欢迎各位彦祖与热巴畅游本人专栏与博客 你的三连是我最大的动力 以下图片仅代表专栏特色 专栏跑道一 ➡️ MYSQL REDIS Advance operation 专栏跑道二➡️ 24 Network Security -LJS ​ ​ ​ 专栏跑道三 ➡️HCIP&#xff1b;H3C-SE;CCIP——LJS[华为、华三、思科高级网络]…

keepalived+lvs集群

目录 一、环境 二、配置 1、master 1.在master上安装配置Keepalived 2.在master上修改配置文件 2、backup 1.在backup&#xff08;192.168.229.12&#xff09;上安装keepalived 2.在backup上修改配置文件 3、master和backup上启动服务 4、web服务器配置 1.web1和web…

生产环境升级mysql流程及配置主从服务

之前写到过mysql升级8.4的文章, 因此不再介绍mysql的安装过程 避免服务器安装多个mysql引起冲突的安装方法_安装两个mysql会冲突吗-CSDN博客 生产环境升级mysql8.4.x流程 安装mysql 参考之前文章: 避免服务器安装多个mysql引起冲突的安装方法_安装两个mysql会冲突吗-CSDN博客…