方法:单调栈
求其中全是1的所有矩形区域中,最大的矩形区域为1的数量。
类比直方图。
单调栈的实现:
如果一个数组表示直方图的话,在其中找出最大正方形。
//[4,3,2,5,6] 准备一个栈,单调栈。栈中放下标。K是当前数的左边界。
在当前数出现的时候,一个数从栈中弹出,就相应的结算弹出的位置能够扩的多少格子。
下面来看看原问题,
方法:单调栈
求其中全是1的所有矩形区域中,最大的矩形区域为1的数量。
类比直方图。
单调栈的实现:
如果一个数组表示直方图的话,在其中找出最大正方形。
//[4,3,2,5,6] 准备一个栈,单调栈。栈中放下标。K是当前数的左边界。
在当前数出现的时候,一个数从栈中弹出,就相应的结算弹出的位置能够扩的多少格子。
下面来看看原问题,