当前位置: 首页 > 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.yidumall.com/news/76821.html

相关文章:

  • 网站链接如何做日历提醒化妆品软文推广范文
  • 城乡建设厅网站营销软文范例
  • 中国建设银行手机银行网站虞城seo代理地址
  • 手机网站绑定域名是什么建网站哪个平台好
  • 网站建设培训一般多少钱网站seo优化服务商
  • 怎样网站建设华为云速建站
  • t型网站域名和版面semaphore
  • 长沙网站制作app开发公司互联网销售平台
  • 做产品的往这看 国外工业设计网站大全汕头网络营销公司
  • 在线客服系统开发seo技术教程
  • 武汉高端品牌网站建设如何进行网站的推广
  • 什么建站程序最利于seoseo实战培训机构
  • 潍坊网站建设.com企业网站设计规范
  • 升级wordpress5seo优化方案策划书
  • 医学招聘网站开发区优化seo搜索
  • dede织梦建站教程青岛seo网络优化公司
  • 公司网站开发招标书企业培训课程ppt
  • 做简图的网站360搜索引擎
  • wordpress链接检查seo运营经理
  • wordpress 多站点 多域名nba排行榜最新排名
  • 服装电子商务网站有哪些百度推广全国代理商排名
  • 易语言做网站教程微信怎么推广自己的产品
  • 网页上本地网站搜索怎样做济南网站优化排名
  • 优秀的网站通过什么提供信息沈阳网站建设
  • flash网站源码 免费东莞做网站seo
  • 红灰搭配网站模板python培训
  • 网站建站知识公司网站seo外包
  • 自个做网站教程大数据营销系统
  • 网站中的表格不受限制的浏览器
  • 河北建设工程信息网官网 费用中项网sem优化公司