LeetCode 221. 最大正方形

思路#

方法:动态规划#

思路来源:

LeetCode官方题解 - 最大正方形

理解 三者取最小+1

复制代码
 1 class Solution {
 2 public:
 3     int maximalSquare(vector<vector<char>>& matrix) {
 4         if (matrix.size() == 0 || matrix[0].size() == 0) {
 5             return 0;
 6         }
 7         int maxSide = 0;
 8         int rows = matrix.size(), columns = matrix[0].size();
 9         vector<vector<int>> dp(rows, vector<int>(columns));
10         for (int i = 0; i < rows; i++) {
11             for (int j = 0; j < columns; j++) {
12                 if (matrix[i][j] == '1') {
13                     if (i == 0 || j == 0) {
14                         dp[i][j] = 1;
15                     } else {
16                         dp[i][j] = min(min(dp[i - 1][j], dp[i][j - 1]), dp[i - 1][j - 1]) + 1;
17                     }
18                     maxSide = max(maxSide, dp[i][j]);
19                 }
20             }
21         }
22         int maxSquare = maxSide * maxSide;
23         return maxSquare;
24     }
25 };
复制代码

 

posted @   拾月凄辰  阅读(54)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
历史上的今天:
2020-03-13 socket通信模型、socket中的accept()阻塞与read()阻塞
2020-03-13 IDEA怎么自动生成serialVersionUID
点击右上角即可分享
微信分享提示
主题色彩