第52天|LeetCode84. 柱状图中最大的矩形

news2024/11/14 21:10:30

题目链接:84. 柱状图中最大的矩形

题目描述:

                给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。

                求在该柱状图中,能够勾勒出来的矩形的最大面积。

解法:

                ①此题求最大能勾勒出的矩形面积,那么我们就求每个柱子能勾勒出的矩形的面积,然后取最大值。

                ②每个柱子能勾勒出的矩形面积 = (右边第一个比其矮的柱子的坐标 - 左边第一个比它矮的柱子的坐标 -  1)* 该柱子的高度。

                ③在找左边或者右边第一比它矮的柱子的坐标的时候,如果左边的比当前的高,那么就变换t为此时的第一个比左边的柱子小的柱子的位置,直到左边比当前的矮就结束。

                ④同理找右边第一个比它矮的柱子的坐标。

                ⑤最后取最大值即可。

下面为代码(java):

 

总结:

                每个柱子能形成的矩形面积 = (右边第一个比当前柱子高度矮的位置 - 左边第一个比当前柱子高度矮的位置) * 当前柱子高度。

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

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

相关文章

Android开发 TextView

1.TextView控件 上一篇博客描述了安卓开发的整体结构,包括页面布局设计(xml)和程序逻辑设计(java), 开发一个APP,还需从最基础的控件入手,今天学习TextView控件 这是一个xml文件,描…

华为OD机试题,用 Java 解【压缩报文还原】问题

最近更新的博客 华为OD机试题,用 Java 解【停车场车辆统计】问题华为OD机试题,用 Java 解【字符串变换最小字符串】问题华为OD机试题,用 Java 解【计算最大乘积】问题华为OD机试题,用 Java 解【DNA 序列】问题华为OD机试 - 组成最大数(Java) | 机试题算法思路 【2023】使…

vue 依赖注入使用教程

vue 中的依赖注入,官网文档已经非常详细,笔者在这里总结一份 目录 1、背景介绍 2、代码实现 2.1、依赖注入固定值 2.2、 依赖注入响应式数据 3、注入别名 4、注入默认值 5、应用层 Provide 6、使用 Symbol 作注入名 1、背景介绍 为什么会出现依…

h5: 打开手机上的某个app

1、android端:直接通过URL Scheme方式打开。2、ios端(2种):(1)使用URL Scheme方式打开。(2)使用Universal link方式打开。3、Universal link方式使用注意事项:&#xff0…

IM即时通讯开发群聊消息的已读回执功能该怎么实现?

我们平时在使用即时通讯应用时候,每当发出一条聊天消息,都希望对方尽快看到,并尽快回复,但对方到底有没有真的看到?我却并不知道。一个残酷的现实是,很多时候对方其实是早就已经看到了这条消息,…

Java “框架 = 注解 + 反射 + 设计模式” 之 注解详解

Java ”框架 注解 反射 设计模式“ 之 注解详解 每博一文案 刹那间我真想令时光停住,好让我回顾自己,回顾失去的年华,缅怀哪个穿一身短小的连衣裙 和瘦窄的短衫的小女孩。让我追悔少年时代,我心灵的愚钝无知,它轻易…

【Eye】Fake News Reading on Social Media: An Eye-tracking Study

Fake News Reading on Social Media: An Eye-tracking Study Abstract 在网上传播假新闻(以及一般的虚假信息)最近被认为是威胁整个社会的一个主要问题。这种传播在很大程度上是由于新的媒体形式,即社交网络和在线媒体网站。研究人员和从业…

Python WebDriver自动化测试

Webdriver Selenium 是 ThroughtWorks 一个强大的基于浏览器的开源自动化测试工具,它通常用来编写 Web 应用的自动化测试。 Selenium 2,又名 WebDriver,它的主要新功能是集成了 Selenium 1.0 以及 WebDriver​(WebDriver 曾经是…

CentOS8基础篇7:Linux系统启动配置

一、Linux系统的启动过程 Linux的启动过程大体分为五个阶段: 1.计算机主机加电后,CPU初始化自身,接着在硬件固定位置执行一条指令。这条指令跳转到BIOS,BIOS找到启动设备并获取MBR,该MBR指向LILO或GRUB。 …

steam/csgo游戏搬砖,适合个人/团队操作的创业项目(内附详细操作流程)

不懂得小伙伴继续听我娓娓道来! 首先准备工作,需要用到的软件: 软件: 1、电脑(开网页不卡的就行) 2、ti子 3、谷歌浏览器(多开方便些,别的也可以) 4、桌面令牌 5、…

Vue的表单处理全解

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录表单处理知识点基本用法文本多行文本单选按钮复选框多个复选框选择框值绑定单选按钮复选框选择框修饰符.number.trim综合小练习表单处理 在日常的开发中&#xff0c…

urllib之urlopen和urlretrieve的headers传入以及parse、urlparse、urlsplit的使用

urllib库是什么?urllib库python的一个最基本的网络请求库,不需要安装任何依赖库就可以导入使用。它可以模拟浏览器想目标服务器发起请求,并可以保存服务器返回的数据。urllib库的使用:1、request.urlopen(1)只能传入url的方式from http.clie…

有状态登录和无状态登录详解

有状态登录和无状态登录详解一 有状态登录二 无状态登陆无状态登陆介绍:无状态token生成方式一 Jwt方式二 RSA256非对称加密方式三 区别与差异四 参考连接一 有状态登录 有状态登录(Session): 传统上,我们会使用 Session 和 Cookie 来保存用…

云计算介绍

云计算介绍概述云分类服务模式应用起源传统 IT 技术存在的问题云计算的产生云计算的发展趋势主要特点关键技术关键技术一览表虚拟化桌面显示协议用户个性化配置海量数据并行计算云安全相关技术相关技术一览表分布式计算网格计算效用计算概述 云计算(Cloud Computin…

rest和rpc的区别

一、rest: REST 不是一种协议,它是一种架构。大部分REST的实现中使用了RPC的机制,大致由三部分组成: 1、method:动词(get、post之类的) 2、Host:URI(统一资源标识&…

华为OD机试题,用 Java 解【静态扫描最优成本】问题

最近更新的博客 华为OD机试题,用 Java 解【停车场车辆统计】问题华为OD机试题,用 Java 解【字符串变换最小字符串】问题华为OD机试题,用 Java 解【计算最大乘积】问题华为OD机试题,用 Java 解【DNA 序列】问题华为OD机试 - 组成最大数(Java) | 机试题算法思路 【2023】使…

2023-02-28 mmap的原理及使用-思考

摘要: 最近在使用mmap解决数据库内存占用损耗过高导致OOM的问题, 不得不说在有些场景下mmap是非常有用. 本文主要涉及一些对mmap的思考. mmap本身的思考: mmap和文件系统的交互规则是什么mmap中给进程虚拟内存映射的文件上的部分,是什么? 为什么是页缓存? 有没有文件缓存?…

Vscode快速配置(1)之基础工具

VScode快速配置(1)之基础工具(v1.0) Author:Once Day Date:2023年2月19日 漫漫长路,才刚刚开始… (嵌入式程序员开发环境) 1. 概述 下面是一些基础插件,基本上嵌入式程序员都会用到。 首先是远程连接…

力扣-销售分析III

大家好,我是空空star,本篇带大家了解一道简单的力扣sql练习题。 文章目录前言一、题目:1084. 销售分析III二、解题1.正确示范①提交SQL运行结果2.正确示范②提交SQL运行结果3.正确示范③提交SQL运行结果4.正确示范④提交SQL运行结果5.其他总结…

Apache Hive入门

文章目录一、Apache Hive概述1.1、什么是Hive1.2、使用Hive原因1.3、Hive和Hadoop关系二、Hive功能思想2.1、映射信息记录2.2、SQL语法解析、编译三、Hive架构、组件3.1、Hive架构图3.2Hive组件四、Hive常用操作4.1、数据类型4.1.1、基本数据类型4.1.2、集合数据类型4.2、数据库…