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

做自己的免费网站现在出入山西最新规定

做自己的免费网站,现在出入山西最新规定,公司网站建设的不足,搭建一个网站需要什么LeetCode:84.柱状图中最大的矩形 84. 柱状图中最大的矩形 - 力扣(LeetCode) 1.思路 双指针思路,以当前数组为中心,借助两个数组存放当前数柱左右两侧小于当前数柱高度的索引,进行h*w的计算。注意首尾节点的左侧索引…
 LeetCode:84.柱状图中最大的矩形

84. 柱状图中最大的矩形 - 力扣(LeetCode)

1.思路

双指针思路,以当前数组为中心,借助两个数组存放当前数柱左右两侧小于当前数柱高度的索引,进行h*w的计算。注意首尾节点的左侧索引和右侧索引需要单独声名为0.

单调栈,在原数组的基础上定义一个新的数组,对其进行首尾节点的扩容。思路延续收集雨水。

2.代码实现
class Solution {public int largestRectangleArea(int[] heights) {​    Stack<Integer> stack = new Stack<>();​    // 数组扩容​    int[] newHeights = new int[heights.length + 2];​    newHeights[0] = 0;​    newHeights[newHeights.length - 1] = 0;​    for (int i = 0; i < heights.length; i++) {​      newHeights[i + 1] = heights[i];​    }​    heights = newHeights; // 改变数组引用​    stack.add(0);​    int result = 0;​    for (int i = 1; i < heights.length; i++) {​      if (heights[i] > heights[stack.peek()]) { // 入栈​        stack.add(i);​      } else if (heights[i] == heights[stack.peek()]) { ​        stack.pop(); // 弹出​        stack.add(i); // 入栈​      } else {​        while (heights[i] < heights[stack.peek()]) {​          int mid = stack.peek(); // 当前数值柱子​          stack.pop();​          int left = stack.peek();​          int right = i;​          int w = right - left - 1;​          int h = heights[mid];​          result = Math.max(result, w * h);​        }​        stack.add(i);​      }​    }​    return result;}}
3.复杂度分析:

时间复杂度:O(n).

空间复杂度:O(n).符合单调递减的情况时,全部入栈。

http://www.yayakq.cn/news/68647/

相关文章:

  • 杭州做网站的好公司哪家好东营新闻联播在线直播今晚
  • 企业网站建设视频教程外链 网站权重
  • 做资讯类网站需要什么资质深圳的小型网络公司
  • 北京网站建设团队中国建设银行什么是网站用户名
  • 低价网站建设公司网络技术培训内容
  • 如何在社交网站上做视频推广方案创可贴设计网
  • 网页制作培训网站php网站整合discuz
  • 全国网站建设汇编广告设计专业属于什么大类
  • 做网站都需要用到什么广告创意设计作品
  • 发外链软件河北网站seo外包
  • sns社交网站.net源码注册公司去哪个网站
  • 宁波专业建网站外包微软做网站软件
  • 做网站推广要会什么做儿童网站
  • 做旅行社网站多少钱怎么下载网站备案号
  • 免费下载软件的网站库尔勒网站建设公司
  • 营销型网站的优缺点seo技巧
  • 单位网站建设要多少钱做企业网站备案都需要什么资料
  • 自适应网站建设沈阳企业做网站的方案
  • 新上线的网站怎么做优化青岛正一品网站建设
  • 做书的网站有哪些百度推广是否做网站
  • 河北商城网站建设价格低怎么利用花生壳做自己的网站
  • 网页建站网站申请电子商务网站的作用有哪些
  • wordpress双语站国内网站需要备案
  • 高端型网站建设网站建设洪塔
  • 电子商务网站建设与管理的重要性长泰微新闻
  • 石家庄高端网站建设无锡网络推广平台
  • 广元网站设计seo的英文全称是什么
  • 西安网站建设哪家公司好网站代码如何做优化
  • 做公司+网站建设价格低东莞房价2021最新价格走势
  • 怎么做网上卖菜网站全球域名查询