练习3动态规划总结

原创 2016年05月31日 11:35:50

       这个专题一共做了12道题,大部分是水题。

最开始做的时最大字段和问题,第i个位置表示从开始到该位置的最大子段和,最后输出最大的数值就可以了。

dp就是让每个数据和在他之前的每个数据进行比较,如果之前的数比他小,此位置的DP就加上之前的数,而他本身,已经初始化到dp数组中;最后输出最大的DP;

有时候觉得动态规划和贪心有一点像,深搜 + 贪心 = 最优,每一步都是目前的最优解,然后慢慢地累加起来,最后得出结果。

之前做过很多和斐波那契数列有关的题,觉得很有意思,一个公式就能把所有的结果计算出来,但是不明白它的原理是什么,现在学了dp,然后就明白了:拿第10题举例,如果要到第n层,那么就是在第n-1层时向上迈一步,在n-2层向上迈两步,那么到第n层的方法便是到n-1层 和 到n-2层的总和。

然后时01背包问题,这类题只做了一个,但是很典型,大体就是说,往背包里放东西,使用二维数组dp[i][j]只考虑放第i件物品,物品放入背包后背包的空间减少,等待放入下一件物品,直到将背包装满。

LeetCode总结,动态规划问题小结

一,参考一般书籍中的“动态规划”讲解 1、基本概念 动态规划(Dynamic Programming)对于子问题重叠的情况特别有效,因为它将子问题的解保存在表格中,当需要某个子问题的解时,直接取值即...
  • EbowTang
  • EbowTang
  • 2016年03月04日 23:50
  • 5422

ACM动态规划总结(by utobe67)

动态规划一直是ACM竞赛中的重点, 也是难点(对于我这种水平),因为该算法时间效率高,代码量少,多元性强、灵活度高,主要考察思维能力、建模抽象能力。学了这么久动态规划,虽然还只是个菜菜= =,但还是想...
  • u010228612
  • u010228612
  • 2015年01月17日 15:19
  • 4128

Python练习(1):递归和动态规划的简单应用

首先考虑一个问题,假如我们在某个编译器上写出了这样的式子:(i++)(i++)(i++),假设i = 5,那么会有多少可能的结果?显然,编译器对这种行为是未定义的,我们不知道i自增和乘法指令的执行顺序...
  • pp634077956
  • pp634077956
  • 2016年03月01日 10:52
  • 1339

动态规划(3):熟练度练习(POJ 1458、最佳加法表达式、bailian2755、POJ3624、bailian1088)

最长公共子序列Language:DefaultCommon SubsequenceTime Limit: 1000MSMemory Limit: 10000KTotal Submissions: 47...
  • sun897949163
  • sun897949163
  • 2016年07月31日 14:49
  • 1319

acm课件3 动态规划

  • 2011年04月07日 18:25
  • 479KB
  • 下载

ACM-ICPC培训资料汇编3数据结构、动态规划

  • 2014年04月18日 16:36
  • 25.52MB
  • 下载

国际大学生程序设计竞赛例题解 3 图论·动态规划算法·综合题专集.pdf

  • 2013年05月23日 18:43
  • 43.99MB
  • 下载

动态规划经典题打包下载3

  • 2009年12月12日 17:29
  • 254KB
  • 下载

动态规划专项练习

  • 2015年01月29日 14:22
  • 51.35MB
  • 下载

动态规划练习

  • 2014年03月21日 16:49
  • 131KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:练习3动态规划总结
举报原因:
原因补充:

(最多只允许输入30个字)