当前位置: 首页 > news >正文

Leetcode 84. 柱状图中最大的矩形 单调栈

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

思路;

解法一: 枚举宽 暴力超时

当前宽度对应的最大面积的高度是: 遍历的最小高度

class Solution {
public:int largestRectangleArea(vector<int>& heights) {int res= 0;int n=heights.size();for(int i=0;i<n;i++){int h = INT_MAX;for(int j = i ;j<n;j++){h = min(h,heights[j]);res = max(res, (j-i+1)*h);}}return res;}
};

解法二: 枚举高 暴力超时

当前高度对应的最大面积的宽度是: 右边比他小的第一个 - 左边比它小的第一个 - 1

class Solution {
public:int largestRectangleArea(vector<int>& heights) {int res= 0;int n=heights.size();for(int i=0;i<n;i++){int l=i-1,r=i+1;int h=heights[i];while(l>=0 && heights[l]>=h) l--;while(r<n && heights[r]>=h) r++;res = max(res,(r-l-1)*h);}return res;}
};

解法三: 单调栈

参考: 暴力解法、栈(单调栈、哨兵技巧)

class Solution {
public:int largestRectangleArea(vector<int>& heights) {int res= 0;heights.push_back(0);stack<int> st;st.push(-1);st.push(0);int n=heights.size();for(int i=1;i<n;i++){if(!st.empty() && heights[i]>heights[st.top()]){st.push(i);}else{while(!st.empty() &&  st.top()!=-1 && heights[st.top()]>heights[i]){int h = heights[st.top()];st.pop();int l = st.top(),r = i;res = max(res,(r-l-1)*h);}st.push(i);}}return res;}
};
http://www.dtcms.com/a/446278.html

相关文章:

  • 专门用来制作网页的软件是河南网站关键词优化
  • 什么是企业网站策划案企业网站空间买虚拟主机
  • 高并发场景下API网关的熔断策略:Hystrix与Sentinel的对比测试
  • llama.cpp Flash Attention 论文与实现深度对比分析
  • Python 3 与 MongoDB 的集成指南
  • 网站生成手机端wordpress高亮插件
  • 基础动态规划问题
  • js多久可以做网站网站建设后帐号密码
  • 第十五篇:Python高效调试与性能优化技巧
  • leetcode 66.加一 python
  • 书生浦语实战营L1-G4000探索大模型能力边界
  • Prometheus 05-02: 告警规则与Alertmanager配置
  • 工信部申诉备案网站免费关键词优化工具
  • RabbitMQ-死信交换机(延时队列)
  • 建网站源码建站详解中国工商建设标准化协会网站
  • phpcms仿站教程it教育培训机构
  • 事务所网站制作方案加盟代理好项目农村
  • yolov8模型在指针式表盘读数中的应用【代码+数据集+python环境+GUI系统】
  • 基于51单片机的智能红外温控风扇设计
  • 从磁盘清理到启动项管理:如何调用原生系统功能
  • PySide6 文本编辑器(QPlainTextEdit)实现查找功能——重构版本
  • 免费注册域名网站河南做网站那家最好
  • 山西省城乡住房和建设厅网站音乐网站如何建设的
  • 用AMD显卡节省nVidia显卡显存占用
  • Go基础:正则表达式 regexp 库详解
  • 怀旧电脑游戏 红色警戒合集 含红警1+2+3代所有版本 免安装中文版 附送地图+修改器
  • 智慧教育——解读“5G+智慧教育”典型应用场景及案例集【附全文阅读】
  • 20251005 OI总结
  • CSP-J复赛模拟赛4 王晨旭补题 2025.10.4
  • 老板让做网站报价平面磨床东莞网站建设