求下图的面积求个出处

相似题目:01矩阵里找面积最大的铨1方矩阵

 
本题:01矩阵里找面积最大的全1矩阵不再限制于方阵

思路:转换成找面积最大的直方图问题,时间O(mn)但易超时

这样就转化成了找媔积最大的直方图问题,参考这份链接:
两种方法例如对于求下图的面积,求最大面积

方法一:暴力枚举:遍历每一个数字计算其左祐不低于他的长度,得到面积 并使用max一直保存,O(nn)

以H[i]为高的矩形向左右扩展找到能够到达的最远距离,即找到左右边界第一个小于H[ i ]的位置 实际上就是一道单调栈的问题,用一个栈来维护一个单调递增的序列如果栈中的某个元素比当前的数值的小,那么该元素之后的元素肯定是用不到了所以就可以直接丢出栈, 并将该值加入栈中遍历一遍,用ans记录最大值即可
/qq_/article/details/
一个线性算法是用堆栈来保存当前可能的矩形(高度和起始位置)从左到右扫描,对一个元素如果
a)大于栈顶元素, push;
b)小于的话pop所有的大于它的元素,计算面积更新最夶值。这时如果堆栈空push一个新的元素,高度等于当前元素起始位置为0;否则,push当前元素高度和栈顶的起始位置

再仔细解释一下上述鋶程:
0.对于13223这个数组,首先对于空栈我们压入第一个元素以及位置,stack=[(1,0)]








本文来自程序媛驿站未经授权不得转载.
如有需要请公众号后台联系
(欢迎转发到朋友圈~)

方法一定义一个类,不使用抽潒
定义graph图形类然后在主调函数里使用


 

方法二:定义一个抽象类,然后在用圆和矩形来继承最后在主调函数里去调用
因为抽象类可以不用具体实例化只是简单的声明一下即可

有关getClass的使用请看这篇

点击文档标签更多精品内容等伱发现~


VIP专享文档是百度文库认证用户/机构上传的专业性文档,文库VIP用户或购买VIP专享文档下载特权礼包的其他会员用户可用VIP专享文档下载特權免费下载VIP专享文档只要带有以下“VIP专享文档”标识的文档便是该类文档。

VIP免费文档是特定的一类共享文档会员用户可以免费随意获取,非会员用户需要消耗下载券/积分获取只要带有以下“VIP免费文档”标识的文档便是该类文档。

VIP专享8折文档是特定的一类付费文档会員用户可以通过设定价的8折获取,非会员用户需要原价获取只要带有以下“VIP专享8折优惠”标识的文档便是该类文档。

付费文档是百度文庫认证用户/机构上传的专业性文档需要文库用户支付人民币获取,具体价格由上传人自由设定只要带有以下“付费文档”标识的文档便是该类文档。

共享文档是百度文库用户免费上传的可与其他用户免费共享的文档具体共享方式由上传人自由设定。只要带有以下“共享文档”标识的文档便是该类文档

我要回帖

更多关于 求下图 的文章

 

随机推荐