动态规划
pessiboy
头号混子,会点C++,会点python,会点java。
展开
-
动态规划-线性dp(2)-最长上升子序列
最长上升子序列是动态规划的中比较常见的题目,我第一次听最长上升子序列,浙大陈越姥姥的课程中听到的。她分析了用不同的方法去解决该问题。题目如下:Acwing-895Leetcode-300这两道题目都是最长上升子序列的题目:很经典按照以往的惯例,还是去用闫氏DP分析法去分析:状态表示f[i]: 如何理解状态表示呢?能用一维度解决,坚决不使用二维。毕竟还是要从实际问题除法集合:f[i]是状态数组,表示的是:以i结尾的最长上升子序列的长度属性:以i结尾的最长上升自序里的长度的最大值状态计算:原创 2020-10-04 23:23:02 · 142 阅读 · 0 评论 -
动态规划-背包问题(1)-0/1背包
从今天开始正式学习动态规划的篇章啦。每天都一定会更新一篇主要参考书籍有《算法笔记》,acwing大雪菜-基础课,提高课。其他有关的博客,以及题目。在引用的时候,我也会贴上去。背包问题滚动数组以及在DP中的应用–>一定要看一下,优化就是在这里。首先对动态规划有一个字面上的了解:它是为了解决什么问题?动态规划是为了解决一类最优化问题的算法思想。简单来说,DP问题是为将一个复杂的问题分解成若干子问题,通过综合子问题的最优解来得到原问题的最优解。动态规划会将每个求解过的子问题的解记录下来,算是缓存原创 2020-10-04 18:42:45 · 170 阅读 · 0 评论