动态规划
文章平均质量分 93
leetcode动态规划题目
百里守约学编程
你会的越多,不会的越多。
展开
-
63. 不同路径 II
本题是62.不同路径的障碍版,整体思路大体一致。但就算是做过62.不同路径,在做本题也会有感觉遇到障碍无从下手。其实只要考虑到,遇到障碍dp[i][j]保持0就可以了。也有一些小细节,例如:初始化的部分,很容易忽略了障碍之后应该都是0的情况。原创 2024-10-05 01:25:49 · 385 阅读 · 0 评论 -
62. 不同路径
依然是使用动规五部曲,这次我们就要考虑如何正确的初始化了,通过本题有没有初步感觉到初始化和遍历顺序其实也很重要了呢!原创 2024-10-04 23:20:39 · 310 阅读 · 0 评论 -
746. 使用最小花费爬楼梯
大家可以发现这道题目相对于70.爬楼梯又难了一点,但整体思路是一样的。从509.斐波那契数到70.爬楼梯再到这道题目,大家感受到循序渐进的梯度了嘛。每个专题最开始的题目都有点简单,其实都是有目的性的,就是用简单题练习方法论,然后难度都是梯度上来的,一环扣一环。原创 2024-10-04 22:44:53 · 853 阅读 · 0 评论 -
70. 爬楼梯
这道题目和509.斐波那契数题目基本是一样的,但是会发现本题相比509.斐波那契数难多了,为什么呢?关键是:509.斐波那契数题目描述就已经把动规五部曲里的递归公式和如何初始化都给出来了,剩下几部曲也自然而然的推出来了。而本题,就需要逐个分析了,大家现在应该初步感受出动规五部曲的重要性了。简单题是用来掌握方法论的,例如昨天斐波那契的题目够简单了吧,但昨天和今天可以使用一套方法分析出来的,这就是方法论!原创 2024-10-04 21:56:47 · 508 阅读 · 0 评论 -
509. 斐波那契数
斐波那契数列这道题目是非常基础的题目,我在后面的动态规划的讲解中将会多次提到斐波那契数列!这里我严格按照动规五部曲来分析了这道题目,一些分析步骤有同学感觉没有必要搞的这么复杂,代码其实上来就可以撸出来。但我还是强调一下,简单题是用来掌握方法论的,动规五部曲将在接下来的动态规划讲解中发挥重要作用,敬请期待!原创 2024-10-04 21:27:04 · 487 阅读 · 0 评论 -
动态规划理论基础
动态规划,简称DP如果某一问题有很多重叠子问题,使用动态规划是最有效的。所以动态规划中每一个状态一定是由上一个状态推导出来的,这一点就区分于贪心,贪心没有状态推导,而是从局部直接选最优的,举一个经典的背包问题例子对比下动态规划和贪心算法的区别:例如:有N件物品和一个最多能背重量为W的背包。第i件物品的重量是weight[i],得到的价值是value[i]。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大。动态规划中,假设dp[j]表示背包装j重量的物品时得到的最大价值,dp[j]是由。原创 2024-10-04 20:53:52 · 609 阅读 · 0 评论