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

代码随想录35期Day60-JavaScript

Day60题目

60天打卡最后一天

LeetCode84柱状图中最大面积

核心思想:当当前遍历到的元素小于栈顶元素的时候,此时栈顶元素最大面积就是自身面积,然后while向左移动,如果左边的值大于当前遍历到的元素,可以得到中间两个的元素最大矩形面积(左边的高度*2)
理解了下面这个用例,就能理解
[2,3,4,1,1,1,1,1,1,1,1,1,1,1,1]

/*** @param {number[]} heights* @return {number}*/
var largestRectangleArea = function (heights) {var res = 0var stack = []heights = [0, ...heights, 0];for (let i = 0; i < heights.length; i++) {while (heights[stack[stack.length - 1]] > heights[i]) {let mid = stack.pop();let h = heights[mid];let w = i - stack[stack.length-1] - 1;res = Math.max(res, h * w);}stack.push(i)}return res;
};

相关文章:

  • 产品经理的需求善变,利用规则引擎减少80%的需求变更成本
  • Python3 列表
  • 2023年简单易用的透明加密软件--安秉网盾企业数据防泄密方案
  • 选择正确的单位:百分比、视窗单位和像素单位在网页设计中的应用
  • [原创][Delphi多线程]TThreadedQueue的经典使用案例.
  • 双指针解题
  • uniapp uni-popup内容被隐藏问题
  • Python编程学习第一篇——Python零基础快速入门(五)—变量
  • k8s怎么监听资源的变更
  • Linux前端与Windows前端区别:深入剖析两大系统的前端差异
  • python 深浅拷贝
  • 网络编程介绍(二)(端口、通信协议)
  • Javaweb基础之工程路径
  • 初始操作系统
  • 10分钟了解ERP软件系统
  • 《Java编程思想》读书笔记-对象导论
  • 4. 路由到控制器 - Laravel从零开始教程
  • eclipse(luna)创建web工程
  • Git初体验
  • js数组之filter
  • maven工程打包jar以及java jar命令的classpath使用
  • Objective-C 中关联引用的概念
  • OSS Web直传 (文件图片)
  • Promise面试题2实现异步串行执行
  • Service Worker
  • Spark in action on Kubernetes - Playground搭建与架构浅析
  • vue从创建到完整的饿了么(11)组件的使用(svg图标及watch的简单使用)
  • 大型网站性能监测、分析与优化常见问题QA
  • 使用parted解决大于2T的磁盘分区
  • 使用Tinker来调试Laravel应用程序的数据以及使用Tinker一些总结
  • 双管齐下,VMware的容器新战略
  • 通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout
  • 小程序 setData 学问多
  • 没有任何编程基础可以直接学习python语言吗?学会后能够做什么? ...
  • 你学不懂C语言,是因为不懂编写C程序的7个步骤 ...
  • 专访Pony.ai 楼天城:自动驾驶已经走过了“从0到1”,“规模”是行业的分水岭| 自动驾驶这十年 ...
  • # C++之functional库用法整理
  • $.ajax中的eval及dataType
  • (3)llvm ir转换过程
  • (Python第六天)文件处理
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (差分)胡桃爱原石
  • (二) Windows 下 Sublime Text 3 安装离线插件 Anaconda
  • (二)c52学习之旅-简单了解单片机
  • (附源码)spring boot车辆管理系统 毕业设计 031034
  • (附源码)SSM环卫人员管理平台 计算机毕设36412
  • (免费领源码)Java#ssm#MySQL 创意商城03663-计算机毕业设计项目选题推荐
  • (转) Face-Resources
  • (转)Android学习系列(31)--App自动化之使用Ant编译项目多渠道打包
  • (转)关于pipe()的详细解析
  • .locked1、locked勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .Net CF下精确的计时器
  • .net core 控制台应用程序读取配置文件app.config
  • .NET Framework .NET Core与 .NET 的区别
  • .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)