題目連線
題意很好理解,這裡我根據官方的題解,總結出兩種方法
暴力法(搜尋或者全部遍歷)
dp動態規劃
由於正方形的面積等於邊長的平方,因此要找到最大正方形的面積,首先需要找到最大正方形的邊長,然後計算最大邊長的平方即可。
;此方法時間複雜度較高動態規劃可以有效降低時間複雜度,用dp
陣列表示以相應位置點作為右下角可以構成符合條件正方形的邊長,如果能計算出所有dp
的值,那麼dp
陣列中的最大值就是符合題目條件的最大正方形邊長,其平方就是最大正方形的面積
具體步驟,對於每個位置dp[i][j]
此外還需要考慮邊界,如果此點為1
且在第一行或者第一列,顯然不能作為正方形右下角,則此點dp
值只能為1
LeetCode221 最大正方形
在乙個由 0 和 1 組成的二維矩陣內,找到只包含 1 的最大正方形,並返回其面積。示例 輸入 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 輸出 4 動態規劃問題。設二維陣列dp m n 其中dp i j 表示以座標 i,j 為右下角元素的最大正方形的邊長。通過觀...
Leetcode 221 最大正方形
在乙個由 0 和 1 組成的二維矩陣內,找到只包含 1 的最大正方形,並返回其面積。示例 輸入 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 輸出 4 思路 和最大長方形類似 可以參照不過每次的max換位長和寬中選取最小值,算他們的平方 提交的 class solu...
LeetCode 221 最大正方形
題目描述 在乙個由 0 和 1 組成的二維矩陣內,找到只包含 1 的最大正方形,並返回其面積。輸入 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 輸出 4 思路 本題需要返回矩陣中最大的正方形面積,計算正方形面積只要知道邊長即可。申請乙個跟matrix矩陣維度相同的...