![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
动态规划
文章平均质量分 90
动态规划题库
敲代码敲到头发茂密
欲戴王冠,必承其重
展开
-
算法题-回文子串和最长回文子序列
布尔类型的dp[i][j]:表示区间范围[i,j] (注意是左闭右闭)的子串是否是回文子串,如果是dp[i][j]为true,否则为false。首先从递推公式中可以看出,情况三是根据dp[i + 1][j - 1]是否为true,在对dp[i][j]进行赋值true的。当s[i]与s[j]不相等,那没啥好说的了,dp[i][j]一定是false。整体上是两种,就是s[i]与s[j]相等,s[i]与s[j]不相等这两种。3、下标i与下标j相差大于1,例如cabac,此时s[i]与s[j]相等。原创 2024-07-06 20:30:50 · 711 阅读 · 2 评论 -
【数据结构与算法】动态规划法解题20240303
连续递增的子序列 可以由两个下标 l 和 r(l < r)确定,如果对于每个 l原创 2024-03-02 23:44:49 · 1036 阅读 · 11 评论 -
【数据结构与算法】动态规划法解题20240302
给定一个代表每个房屋存放金额的非负整数数组,计算你 在不触动警报装置的情况下 ,今晚能够偷窃到的最高金额。对于一个数组,成环的话主要有如下三种情况:情况一:考虑不包含首尾元素情况二:考虑包含首元素,不包含尾元素情况三:考虑包含尾元素,不包含首元素。原创 2024-03-01 23:11:36 · 983 阅读 · 11 评论 -
【数据结构与算法】动态规划法解题20240228
如何初始化呢,首先dp[i][0]一定都是1,因为从(0, 0)的位置到(i, 0)的路径只有一条,那么dp[0][j]也同理。这样就可以保证推导dp[i][j]的时候,dp[i - 1][j] 和 dp[i][j - 1]一定是有数值的。一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人从(0 , 0) 位置出发,到(m - 1, n - 1)终点。1、确定dp数组(dp table)以及下标的含义。1、确定dp数组(dp table)以及下标的含义。原创 2024-02-27 23:13:03 · 873 阅读 · 19 评论 -
【数据结构与算法】动态规划法解题20240227
动态规划,简称DP,如果某一问题有很多重叠子问题,使用动态规划是最有效的。动态规划中每一个状态一定是由上一个状态推导出来的。原创 2024-02-26 23:09:51 · 1126 阅读 · 29 评论