leetcode 85 最大矩形 轉化為84題

2021-09-25 06:14:33 字數 744 閱讀 5603

題目描述

給定乙個僅包含 0 和 1 的二維二進位制矩陣,找出只包含 1 的最大矩形,並返回其面積。

示例:

輸入:[

[「1」,「0」,「1」,「0」,「0」],

[「1」,「0」,「1」,「1」,「1」],

[「1」,「1」,「1」,「1」,「1」],

[「1」,「0」,「0」,「1」,「0」]

]輸出: 6

思路對於每一列累計他的最大高度,相當於遍歷每一行之後都會形成乙個柱狀圖,累計最大高度使用如下**:

dp[j] = dp[j] + 1 if matrix[i][j] == '1' else 0
每行遍歷結束之後使用84演算法更新最大面積。

class solution 

else

else}}

while

(!s.

empty()

)return maxarea;

}int

maximalrectangle

(vectorchar

>>

& matrix)

maxarea =

max(maxarea,

largestrectanglearea

(rec));

}return maxarea;}}

;

LeetCode 85 最大矩形

給定乙個僅包含 0 和 1 的二維二進位制矩陣,找出只包含 1 的最大矩形,並返回其面積。示例 輸入 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 輸出 6此題和上一題的擴充套件,此題給的二維矩陣的每一行向上都形成了乙個直方圖,所以二維矩陣有多少行,就有多少個直方圖...

leetcode85 最大矩形

1.轉換成直方圖的做法 參考 利用leetcode84中的方法來做 首先要將給定的01矩陣轉換成84中的直方圖的樣子。每一行都對應乙個直方圖,且下一行直方圖是由上一行直方圖計算得到的。如果是0,則當前直方圖高為0,如果是1,則當前直方圖高度是上一層對應位置高度 1 1 0 1 0 0 1,0 1,0...

LeetCode 85 最大矩形

給定乙個僅包含 0 和 1 的二維二進位制矩陣,找出只包含 1 的最大矩形,並返回其面積。示例 輸入 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 輸出 6這一題的演算法本質上和84題largest rectangle in histogram一樣,對每一列都求出每...