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

重庆网站建设找重庆最佳科技建分类网站得花多少钱

重庆网站建设找重庆最佳科技,建分类网站得花多少钱,wordpress 播放列表,app开发有限公司一、题目描述 给定 n 个非负整数#xff0c;用来表示柱状图中各个柱子的高度。每个柱子彼此相邻#xff0c;且宽度为 1 。 求在该柱状图中#xff0c;能够勾勒出来的矩形的最大面积。 示例 1: 输入#xff1a;heights [2,1,5,6,2,3] 输出#xff1a;10 解释#xff1a…一、题目描述 给定 n 个非负整数用来表示柱状图中各个柱子的高度。每个柱子彼此相邻且宽度为 1 。 求在该柱状图中能够勾勒出来的矩形的最大面积。 示例 1: 输入heights [2,1,5,6,2,3] 输出10 解释最大的矩形为图中红色区域面积为 10示例 2 输入 heights [2,4] 输出 4提示 1 heights.length 1050 heights[i] 104 二、思路分析 使用栈空间来解决本题通过空间换时间的方式。 三、代码参考 1、Java class Solution {public int largestRectangleArea(int[] heights) {// 获取数组长度int len heights.length;// 数组长度为 0 或者 1 时直接返回if(len 0){return 0;}if(len 1){return heights[0];}// 用来返回最大面积初始值为 0int area 0;// 创建栈空间做辅助DequeInteger stack new ArrayDeque();// 循环遍历数组for(int i 0; i len; i){// while(!stack.isEmpty() heights[stack.peekLast()] heights[i]){// 获取栈顶高度并移除当前栈顶int height heights[stack.removeLast()];// 做特殊的处理如果当前栈顶的高度和上一个栈顶的高度相同则也需要进行弹栈while(!stack.isEmpty() heights[stack.peekLast()] height){// 移除栈顶元素stack.removeLast();}// 创建宽度变量初始值为 0int width 0;// 如果栈为空说明有效柱体能够从 i 的左边一直延伸到第一个开始if(stack.isEmpty()){// 所以此时的宽度为 iwidth i;}else {width i - stack.peekLast() - 1;}// 计算面积, 长 * 宽并获取最大面积area Math.max(area, height * width);}// 将下标存入栈空间中stack.addLast(i);}// 将当前栈中的所有元素弹出while(!stack.isEmpty()){// 获取栈顶高度并移除当前栈顶int height heights[stack.removeLast()];// 做特殊的处理如果当前栈顶的高度和上一个栈顶的高度相同则也需要进行弹栈while(!stack.isEmpty() heights[stack.peekLast()] height){// 移除栈顶元素stack.removeLast();}// 创建宽度变量初始值为 0int width 0;// 如果栈为空说明有效柱体能够从 i 的左边一直延伸到第一个开始if(stack.isEmpty()){// 所以此时的宽度为 lenwidth len;}else {width len - stack.peekLast() - 1;}// 计算面积, 长 * 宽并获取最大面积area Math.max(area, height * width);}// 返回面积结果return area;} } 2、Python class Solution:def largestRectangleArea(self, heights: List[int]) - int:size len(heights)area 0stack []for i in range(size):while len(stack) 0 and heights[i] heights[stack[-1]]:height heights[stack.pop()]while len(stack) 0 and height heights[stack[-1]]:stack.pop()if len(stack) 0:width i - stack[-1] - 1else:width iarea max(area, height * width)stack.append(i)while len(stack) 0 is not None:height heights[stack.pop()]while len(stack) 0 and height heights[stack[-1]]:stack.pop()if len(stack) 0:width size - stack[-1] - 1else:width sizearea max(area, height * width)return area
http://www.hkea.cn/news/14557910/

相关文章:

  • 佛山市企业网站seo点击软件婚纱网站源代码
  • 网站开发招聘年薪答辩ppt模板免费下载 素材
  • 企业网站 微博模块怎么建立网站 个人
  • 苏州网站建设系统哪家好网站托管费用多少
  • 蓟县集团网站建设企业网站系统的设计与开发教程
  • 专门做项目代理的网站有哪些网站建设工作室
  • 建一个wordpress网站成本南宁门户网站有哪些
  • 企业网站建设常见问题大连推广网站搭建哪家好
  • 网站建设方案及报win 7怎么卸载wordpress
  • 做微网站常用软件专业网站
  • 佛山网站设计是企业宣传网站案例
  • 团购网站开发与设计自动生成logo的软件
  • 网站建设需招聘什么专业人就是做网站的.....
  • 青岛制作企业网站的公司河北省建设项目环保备案网站
  • 南平公司做网站建立网站有什么用
  • 银川网站设计联系电话百度旗下产品
  • 东昌府做网站推广怎么做网站广告位
  • 福永医院网站建设求个网站2020急急急
  • 企业网站建设既可以外包给专业的网站建设服务公司海外专用服务器
  • 网站排版尺寸亚马逊aws永久免费服务器
  • 厅门户网站建设wordpress文章分类链接
  • 邯郸做网站流程陕西高端品牌网站建设
  • 自己的网站 做采集怎么做企业单位网站建设内容需要什么
  • 做红包网站是犯法的吗小程序开发平台哪里做得好
  • 黄页直播免费观看大全网站数据做图网站有哪些
  • 母婴网站设计开发厦门it做网站最强
  • 景德镇网站建设景德镇所有网上购物的网站
  • 电子商务网站的设计wordpress 双语
  • 护肤品网站建设前的行业分析建设网站 教学反思
  • 网站与后台个人建网站运营.