2021-04-25

在这里插入图片描述
在这里插入图片描述在读者阅读本篇文章的时候,尝试一下解决上面的问题,有个思路。然后才能更好的体验下面的思想。
我想讲的是关于动态规划的问题的一个解题思路,我由我最近解的题型讲一下我自己对动态规划规划算法的理解。
动态规划的核心想要解决的问题是关于最优解问题,写程序求出这个最优结果的时候,不可能一步到位,这就需要一个阶段一个阶段的求,要想使结果最优,你得确保求这个最优解所经过的每个阶段最优。
这时候我们得把目光和精力聚集在咋样知道第个最优阶段从而去求第二个最优阶段,然后由第二个最优阶段去求第三个阶段最优解,以此类推。
而这个阶段的选择很重要,比如关于leetcode
在这里插入图片描述这道最长回文字串的问题。他所选的阶段以字符串的长度作为分界.先求出字符串的长度为二的最长回文子串。然后用字符串为二的最长回归子序列用递推公式。去求出长度为三的字符串最长值子串。此类推求出长度为n的字符串最长回文子串。
在这里插入图片描述
这道最小路径题。他选的阶段分界是这个网格的每一个方块。也就是说,你得把从左上角到达这个网格的每个方块的最优解(最小路径)求出来。你才能求出从左上角到达右下角的最小路径。
在这里插入图片描述
这道最大子序列和,选的阶段是,求一每个数组的元素为结尾最大值序列作为每一个阶段。所以只要把一,把每个该数组中的每个元素为结尾的最大子序和给求出来。比如,先求出数组下标为二结尾的最长子序和,然后用递推公式,依次求出。数组下标为三结尾所对应的元素的最长子序和,然后依次求出以数组最后一个元素为结尾的最长子序列。然后做比较。选出和最大的。那么这个最大值就是整个数组的最长子序和。
所以动态规划题。只要你把划分阶段的关键因素找好。这段动态规划题就已经成功了一半。再把递归公式求出来。只要你有一定的代码基础。很多动态规划题都可以求出来。
最后请读者用我这套思路尝试一下解决。最上面不同路径的问题。
最后还要说一下,以上的题目。本人都已经实现过。而且在力扣上通过。如果读者有任何关于上面题目中的不懂的。可以来私信我,我给你一一讲解。若有其他动态规划问题,请读者尝试一下用上面的思路,去解决该类问题。不懂可以私信我讨论。放心,完全免费讲解!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值