leetcode221.最大正方形

java 复制代码
class Solution {
    public int maximalSquare(char[][] matrix) {
        int result = 0; // 记录正方形边长
        int m = matrix.length, n = matrix[0].length;
        int[][] dp = new int[m + 1][n + 1];
        // 动态规划
        for (int i = 1; i <= m; i++) {
            for (int j = 1; j <= n; j++) {
                if (matrix[i - 1][j - 1] == '0') {
                    dp[i][j] = 0;
                } else {
                    dp[i][j] = 1 + Math.min(Math.min(dp[i - 1][j], dp[i][j - 1]), dp[i - 1][j - 1]);
                    result = Math.max(result, dp[i][j]);
                }
            }
        }
        return result * result;
    }
}
相关推荐
uhakadotcom6 分钟前
Google Cloud Dataproc:简化大数据处理的强大工具
后端·算法·面试
兰亭序咖啡15 分钟前
学透Spring Boot — 018. 优雅支持多种响应格式
java·spring boot·后端
小雨凉如水19 分钟前
docker 常用命令
java·docker·eureka
高山流水&上善38 分钟前
医药档案区块链系统
java·springboot
uhakadotcom1 小时前
PyTorch 分布式训练入门指南
算法·面试·github
uhakadotcom1 小时前
PyTorch 与 Amazon SageMaker 配合使用:基础知识与实践
算法·面试·github
南汐以墨1 小时前
探秘JVM内部
java·jvm
Craaaayon1 小时前
Java八股文-List集合
java·开发语言·数据结构·list
uhakadotcom1 小时前
在Google Cloud上使用PyTorch:如何在Vertex AI上训练和调优PyTorch模型
算法·面试·github
wen__xvn1 小时前
c++STL入门
开发语言·c++·算法