
[算法]动态规划
文章平均质量分 53
动态规划
zdfunk
保持理智,相信未来
展开
-
LC1277. 统计全为 1 的正方形子矩阵
LC1277. 统计全为 1 的正方形子矩阵 给你一个 m * n 的矩阵,矩阵中的元素不是 0 就是 1,请你统计并返回其中完全由 1 组成的 正方形 子矩阵的个数。 示例 : 输入:matrix = [ [0,1,1,1], [1,1,1,1], [0,1,1,1] ] 输出:15 解释: 边长为 1 的正方形有 10 个。 边长为 2 的正方形有 4 个。 边长为 3 的正方形有 1 个。 正方形的总数 = 10 + 4 + 1 = 15. 解法参考LC221, 用 dp[i][j]=x原创 2021-08-18 20:40:03 · 367 阅读 · 0 评论 -
动态规划LC221. 最大正方形
LC221. 最大正方形 在一个由 ‘0’ 和 ‘1’ 组成的二维矩阵内,找到只包含 ‘1’ 的最大正方形,并返回其面积。 m == matrix.length n == matrix[i].length 1 <= m, n <= 300 matrix[i][j] 为 '0' 或 '1' 用 dp(i,j) 表示以 (i, j)为右下角,且只包含'1' 的正方形的边长最大值。如果我们能计算出所有dp(i,j) 的值,那么其中的最大值即为矩阵中只包含'1' 的正方形的边长最大值,其平方即为最大原创 2021-08-18 20:03:18 · 222 阅读 · 0 评论 -
经典动态规划—53. 最大子序和
53. 最大子序和 53. 最大子序和 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 示例 1: 输入:nums = [-2,1,-3,4,-1,2,1,-5,4] 输出:6 解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。 方法一:动态规划 如何定义状态? 我们列出子问题如下: 子问题 1:以 -2结尾的连续子数组的最大和是多少; 子问题 2:以 1结尾的连续子数组的最大和是多少; 子问题 3:以 -3 结尾的连续子数组的最大和是多少原创 2021-08-08 01:26:32 · 215 阅读 · 0 评论