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

网站建设套餐服务广州建站服务

网站建设套餐服务,广州建站服务,成都网站设公司,网络营销方案案例(一)问题描述 84. 柱状图中最大的矩形 - 力扣(LeetCode)84. 柱状图中最大的矩形 - 给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。求在该柱状图中,能够勾…

(一)问题描述

84. 柱状图中最大的矩形 - 力扣(LeetCode)84. 柱状图中最大的矩形 - 给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。求在该柱状图中,能够勾勒出来的矩形的最大面积。 示例 1:[https://assets.leetcode.com/uploads/2021/01/04/histogram.jpg]输入:heights = [2,1,5,6,2,3]输出:10解释:最大的矩形为图中红色区域,面积为 10示例 2:[https://assets.leetcode.com/uploads/2021/01/04/histogram-1.jpg]输入: heights = [2,4]输出: 4 提示: * 1 <= heights.length <=105 * 0 <= heights[i] <= 104https://leetcode.cn/problems/largest-rectangle-in-histogram/description/?envType=study-plan-v2&envId=top-100-liked

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

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

示例 1:

输入:heights = [2,1,5,6,2,3]
输出:10
解释:最大的矩形为图中红色区域,面积为 10

示例 2:

输入: heights = [2,4]
输出: 4

提示:

  • 1 <= heights.length <=105
  • 0 <= heights[i] <= 104

(二)解决思路

        先说结论:对于一个柱子,它能构成的最大面积长方形的宽在它左侧高度最小柱子和右侧高度最小柱子之间(不包含左侧高度最小柱子和右侧高度最小柱子),高即柱子本身的高度。

        这里采用单调栈来计算各个柱子的左边界和右边界数组。以求左边界数组为例,当栈顶元素大于当前元素时就将栈顶元素弹出,并将当前柱子的位置加入栈中。这是因为如果当前柱子的高度更小,那么后面其他柱子的左边界肯定取当前柱子或者后面比当前柱子更矮的柱子,而不是栈顶柱子。

        我一开始想到了42. 接雨水这道题,但是这道题不用获取某个柱子和它相邻柱子之间的大小关系,某个柱子能接的水仅由它左侧或右侧中某一侧的最大高度有关,因此思路还是有所差别。

class Solution {public int largestRectangleArea(int[] heights) {int n=heights.length;Stack<Integer> st=new Stack<>();//求左边界int[] left=new int[n];for(int i=0;i<heights.length;i++){while(!st.isEmpty()&&heights[i]<=heights[st.peek()]){st.pop();}left[i]=(st.isEmpty()?-1:st.peek());st.push(i);}st.clear();//求右边界int[] right=new int[n];for(int i=n-1;i>=0;i--){while(!st.isEmpty()&&heights[i]<=heights[st.peek()]){st.pop();}right[i]=(st.isEmpty())?n:st.peek();st.push(i);}int ans=0;for(int i=0;i<n;i++){ans=Math.max(ans,(right[i]-left[i]-1)*heights[i]);}return ans;}
}
http://www.yayakq.cn/news/794486/

相关文章:

  • 百度蜘蛛站长服务平台怎么自己做网站
  • 网站开发用什么字体山西做网站的企业
  • 专业做网站技术wordpress原创主题简单
  • 单位制作网站备案母婴会所 网站源码
  • 泰塔科技网站建设品牌展示设计网站
  • 网站做好了 怎么做解析邵阳建网站
  • 珠海网站建设解决方案产品推广方案思维导图
  • 西安网站推广公司做平面设计有前途吗
  • 深圳网站建设企河北婚庆网站建设定制
  • 自己做网站的成本中小型网站建设效果
  • 门户网站时代python自学要多久
  • 手机wap网站模板使用产品网站做营销推广
  • 建设中网站源码生成链接的软件
  • 天津通用网站建设方案wordpress相册插件nextgen gallery
  • 广州建设网站的公司哪家好做网站用什么主题
  • 深圳罗湖建网站商务网站的可行性分析包括
  • wordpress怎么做网盘站兰州北京网站建设
  • 网站开发软件开发项目外贸出口网站建设
  • 帮忙做公司网站wordpress怎么更改主题文字颜色
  • 网站开发项目架构wordpress 秀米
  • 网站前台设计模板珠宝网站制作的理念
  • 如何建立一家公司网站网站的引导页面是什么意思
  • 给个网站急急急202wordpress没有描述
  • 做网站的图片传进去很模糊网站建设项目概要设计方案
  • 网站建设怎么样做账深圳建网站哪个济南兴田德润有活动吗
  • 网站备案证书下载不了室内设计培训班学费一般多少
  • 中投建设集团有限公司 网站营销型网站及原因有哪些方面
  • 微信怎么自己创建小程序安卓优化大师app下载
  • 企业网站网页设计的步骤嘉兴做美食图片的网站
  • 建设学校网站的原因如何做网站推广及优化