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

简述网站建设的流程百度经验app

简述网站建设的流程,百度经验app,网站运营与网络推广方案,许昌长葛网站建设制作设计一、题目描述 给定一个仅包含 0 和 1 、大小为 rows x cols 的二维二进制矩阵,找出只包含 1 的最大矩形,并返回其面积。 输入:matrix [["1","0","1","0","0"],["1","0&…

一、题目描述

给定一个仅包含 0 和 1 、大小为 rows x cols 的二维二进制矩阵,找出只包含 1 的最大矩形,并返回其面积。

输入:matrix = [["1","0","1","0","0"],["1","0","1","1","1"],["1","1","1","1","1"],["1","0","0","1","0"]]
输出:6
解释:最大矩形如上图所示。

二、思路分析

 暴力枚举+高度数组

首先我们发现,其实找一块块矩阵时,很多时候我们都要重复的寻找一些单元格,来确保我们可以找到最大的矩阵面积。 所以我们可以使用动态规划,来帮助我们记录之前查找过的矩阵信息。我们定义height[i]代表当前行的第j列往上数,数字为1的矩阵高度。然后我们开始一行行遍历,在第i行时,我们要从第j列开始往前查找j-1一直到0,每次的高度取这一路的最小值,然后不断更新最大值。

单调栈

我可以参考关于Leetcode-84.柱状图中最大的矩形。首先我们仍然计算出每一行的高度数组,然后遍历每一行,像上面这个文章一样,看成计算柱状图中的最大矩阵即可。

三、实现代码

只写了暴力枚举的,单调栈方法的代码和上个题差不多,偷个懒。

class Solution:def maximalRectangle(self, matrix: List[List[str]]) -> int:row = len(matrix)col = len(matrix[0])result = 0#height[j]代表在第j列目前为1的矩阵高度height = [0] * colfor i in range(row):for j in range(col):if matrix[i][j] == '1':height[j] += 1if j == 0:result = max(result, height[j])continuemin_height = height[j]for t in range(j, -1, -1):if height[t] == 0:breakmin_height = min(min_height, height[t])current_area = min_height * (j-t+1)result = max(result, current_area)else:height[j] = 0return result

http://www.hrbkazy.com/news/45793.html

相关文章:

  • 西宁市网站建设公司seo教学网seo
  • 提供模板网站制作多少钱整站seo优化
  • wordpress做登陆页面模板优化营商环境工作开展情况汇报
  • 广州网站建设与网页设计2021年最为成功的营销案例
  • wordpress 版本号一键优化下载安装
  • wordpress子站点茶叶网络推广方案
  • 沭阳住房和城乡建设局网站东莞优化疫情防控措施
  • 如何做网站的客服建一个网站大概需要多少钱
  • 一下成都网站建设公司手机制作网页用什么软件
  • 北京做网站哪家强网络营销推广方案策划与实施
  • 建设医疗网站黑龙江今日新闻
  • 地方门户网站发展趋势哈尔滨网站推广
  • 河南做网站多少钱seo点击优化
  • 如何创建企业网站东莞免费建站公司
  • 嘉兴做网站多少钱网络营销策略都有哪些
  • 网站在公安部备案搭建一个网站需要多少钱
  • bugku中网站被黑怎么做软文推广范文
  • 自己做淘宝网站故事式软文广告300字
  • 网站上线备案互联网宣传推广
  • 龙岩网站建设亿网行广告公司网站制作
  • 中原郑州网站建设岳阳seo
  • 建设银行卡如何网站激活搜搜
  • 网站目标定位分析百度网盟推广怎么做
  • 长沙网站建设去哪好无锡百度
  • 做百度网站营业执照用注销吗百度贴吧广告投放价格
  • 网站建设合同 果动.l重庆森林电影简介
  • 怎么查看一个网站开发语言电商网站订烟
  • 简历模板大学生湖北搜索引擎优化
  • 宝鸡企业网站建设关键词推广和定向推广
  • 驻马店做网站公司原创文章代写