探索LeetCode【0011】盛最多水的容器(已懂)

news2024/12/25 14:20:27

目录

  • 0. 题目
  • 1. 官方解答一(已懂)
  • 2. 精简解答二(已懂)
  • 3. 正确性解释

0. 题目

题目链接:【0011】盛最多水的容器

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

1. 官方解答一(已懂)

链接

class Solution {
public:
    int maxArea(vector<int>& height) {
        int l = 0, r = height.size() - 1;
        int ans = 0;
        while (l < r) {
            int area = min(height[l], height[r]) * (r - l);
            ans = max(ans, area);
            if (height[l] <= height[r]) {
                ++l;
            }
            else {
                --r;
            }
        }
        return ans;
    }
};

2. 精简解答二(已懂)

链接

class Solution {
public:
    int maxArea(vector<int>& height) {
        int i = 0, j = height.size() - 1, res = 0;
        while(i < j) {
            res = height[i] < height[j] ? 
                max(res, (j - i) * height[i++]): 
                max(res, (j - i) * height[j--]); 
        }
        return res;
    }
};

3. 正确性解释

链接

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/547244.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

From Java To Kotlin:空安全、扩展、函数、Lambda很详细,这次终于懂了

From Java To Kotlin, 空安全、扩展、函数、Lambda 概述&#xff08;Summarize&#xff09; Kotlin 是什么&#xff1f;可以做什么&#xff1f;Android 官方开发语言从Java变为Kotlin,Java 有哪些问题&#xff1f;Kotlin的优点Kotlin 特性&#xff08;Features&#xff09; K…

有名的国外CRM系统有哪些?如何选择?

CRM系统可以帮助企业获得更多地潜在客户&#xff0c;优化销售流程&#xff0c;提高工作效率&#xff0c;增强客户服务水平&#xff0c;是如今企业不可或缺的工具。那么&#xff0c;国外CRM的知名厂商有哪些&#xff1f;下面小编来为大家进行推荐。 Zoho CRM&#xff1a; Zoho…

快手国际化 后端开发面经一面

目录 1.JMM内存模型2.堆怎么管理内存3.垃圾回收算法4.跨代引用问题怎么解决5.垃圾回收器6.CMS回收过程7.G1和CMS区别 1.JMM内存模型 计算机存储结构&#xff0c;从本地磁盘到主存到CPU缓存&#xff0c;也就是从硬盘到内存&#xff0c;到CPU。 问题&#xff1f;和推导出我们需要…

全国节能宣传周知识答题活动

全国节能宣传周知识答题活动 若想在短期内&#xff0c;进行安全生产知识的传播&#xff0c;那么答题无疑是有效方式之一。 答题活动小程序v3.0&#xff0c;基于微信原生小程序云开发实现。主要包含六大功能模块页面&#xff0c;首页、活动规则页、排行榜页、答题页、结果页、…

每日一个MySQL问题: MTS 高并发下主从表空间不一致的问题

简单记录原因&#xff0c;最近我也遇到这样的问题&#xff0c;涉及的知识点其实很多&#xff0c;我也仅仅是简单分析了一下&#xff0c;供参考。模拟版本8.0.28。 一、问题说明和模拟方式 就是主从一个表&#xff0c;主库大约600M&#xff0c;从库大约900M&#xff0c;当然主从…

推荐一个网络安全网站(HTML)

废话不多&#xff0c;直接上链接https://www.hackthissite.org/ 这不是一个新手向的网站&#xff0c;建议有一定基础的同学访问&#xff0c;里面大部分都是黑客实操&#xff0c;对大部分希望学习网络安全并有一定基础的人都可以有较大提升 全区英文&#xff0c;这对各位应该不…

Java面试题汇总(包含算法题及底层知识)

花了很久时间整理了Java领域互联网公司常考的面试题&#xff0c;主要包含六大类: 第一类:Java及Javaweb常考基础题及高级题&#xff0c;包含了很多公司爱问的非常冷门的知识点&#xff0c;很多面试官喜欢通过问非常冷门的知识来判断面试者的基础掌握程度。 第二类:Java虚拟机以…

EasyRecovery16电脑硬盘数据恢复软件功能讲解

硬盘是很常见的存储数据的设备&#xff0c;硬盘中很多重要的数据一旦丢失会很麻烦&#xff0c;不过现在有硬盘数据恢复软件可以自行在家恢复数据。今天的文章就带大家来看看硬盘恢复数据的软件EasyRecovery。 EasyRecovery 是一款专业的数据恢复软件&#xff0c;支持恢复不同存…

【Proteus仿真】51单片机Blink点灯实验

【Proteus仿真】51单片机Blink点灯实验 &#x1f516;Proteus仿真基础实验-点亮第一个LED灯。&#x1f33f;Proteus8.12平台&#x1f33f;本实验代码基于VSM Studio&#xff0c;采用SDCC编译器。&#x1f3ac;仿真演示&#xff1a; ⛳头文件使用说明 ⚡第一次调用STC89.h头文…

MySQL is null 走不走索引?

网上很多的说法&#xff0c;都是说不能走索引。但其实是错误的。 其实也是又可能走索引的。 比如&#xff0c;select * from table where a xxx or a is null; 通过explain 看这条sql的执行计划&#xff0c;type ref_or_null&#xff0c;这条sql语句会查询两次&#xff0c;第…

带拉绳的按钮

看看效果&#xff1a; 再上代吗&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title><script src"https://unpkg.co/gsap3/dist/gsap.min.js"></scr…

可视区域兼容性问题的思考及方法封装

今日在复习可视化尺寸获取时突发奇想&#xff0c;为什么要在怪异模式下使用document.body.clientWidth&#xff0c;在标准模式下使用document.documentElement.clientWidth&#xff1f;以及是否在IE8及以下的版本中其中一个获取方式将返回undefined或0。  出于该问题的思考&am…

C++的cin详解

2023年5月20日&#xff0c;周六早上&#xff1a; 我发现我找不到非常详细的cin类的成员函数&#xff0c;只好自己写了。 不定期更新。 cin的继承关系 cin类继承自istream类&#xff0c;ostream类继承自ios类&#xff0c;ios类继承自ios_base类 cin类拥有的所有成员函数 1. …

【算法题】2352. 相等行列对

插&#xff1a; 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 坚持不懈&#xff0c;越努力越幸运&#xff0c;大家一起学习鸭~~~ 题目&#xff1a; 给你一个下标从 0 开始、大小为 n …

ChatGPT 推出 iOS 应用,支持语音输入,使用体验如何?

最近&#xff0c;OpenAI 宣布推出官方 iOS 应用&#xff0c;允许用户随时随地访问其高人气 AI 聊天机器人&#xff0c;此举也打破了近几个月内苹果 App Store 上充斥似是而非的山寨服务的窘境。 该应用程序是 ChatGPT 的首个官方移动应用程序。ChatGPT 软件程序在去年推出后迅速…

Inertial Explorer处理pospac数据总结

Inertial Explorer处理pospac数据的过程包括&#xff1a;1&#xff09;从pospac提取出gps数据和imu数据&#xff1b;2&#xff09;gps数据转成rinex格式&#xff1b;3)imu数据转成imr格式&#xff1b;4&#xff09;IE对gps数据进行PPP解算&#xff1b;5&#xff09;紧耦合融合解…

帆软FineReport之版本升级

最近有个需求是将帆软报表版本从9升级到10&#xff0c;记录升级过程&#xff0c;方便备查。 前置条件&#xff1a;服务器上帆软10部署成功 版本区别 fineReport 9.0 http://IP:Port/WebReport/ReportServer?reportletabc.cpt fineReport 10.0 http://IP:Port/webroot/decision…

biopython: runningtime:generator didnot stop after throw

在运行某个蛋白【3NPS】的时候出现报错: 代码: parse=PDBParse(QUIET=True) structure=parser.get_structure(X,pdb) 报错: runningtime:generator didnot stop after throw 解决: (1)检查是否biopython版本和python 版本不一致: Biopython 支持多个 Python 版本…

第一章:VMware 虚拟机安装

Linux 的开发需要在 Linux 系统下进行&#xff0c;这就要求我们的 PC 主机安装 Linux 系统&#xff0c;本篇我 们选择 Ubuntu 这个 Linux 发行版系统。本篇讲解如何安装虚拟机&#xff0c;以及如何在虚拟机中安装 Ubuntu 系统&#xff0c;安装完成以后如何做简单的设置。如…

Android大作业(三)——修改应用图标

Android大作业&#xff08;三&#xff09;——修改应用图标 系列文章目录前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据总结 前言 在Android studio开发安卓应用时&#xff0c;工程中带有默认应用图标。安卓的图标有圆角、方形、高低像素的不同版本&#x…