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;
    }
}
相关推荐
AI科技摆渡1 分钟前
GPT-5.2介绍+ 三步对接教程
android·java·gpt
嗷嗷哦润橘_4 分钟前
AI Agent学习:MetaGPT项目之RAG
人工智能·python·学习·算法·deepseek
猿与禅8 分钟前
Spring Boot 4.0 完整核心特性及实践指南
java·spring boot·后端·spring·重大升级·springboot4.0
运维@小兵22 分钟前
Spring-AI系列——Tool Calling获取当前时间
java·后端·spring
不忘不弃23 分钟前
指针元素的使用
算法
认真敲代码的小火龙24 分钟前
【JAVA项目】基于JAVA的养老院管理系统
java·开发语言·课程设计
he___H25 分钟前
滑动窗口一题
java·数据结构·算法·滑动窗口
AI科技星26 分钟前
统一场论质量定义方程:数学验证与应用分析
开发语言·数据结构·经验分享·线性代数·算法
扶苏-su26 分钟前
Java---事件处理机制
java·开发语言
雨中飘荡的记忆27 分钟前
Hutool工具库实战
java