pascal高手进(dp与贪心的区别)

来源:百度知道 编辑:UC知道 时间:2024/06/21 18:32:49
dp与贪心有什么区别啊?
什么时候只能用dp而不用贪心?
什么时候只能用贪心而不用贪心?
请高手们教教小弟,谢!

很大的不同~
贪心是一种思想~活学活用
dp满足全局最优时子问题最优~所以dp在转移状态的时候是贪心的
个人经验:
当发现一个问题不能直接贪心的时候(如01背包。。手算是非常麻烦的),数据范围又比较大(不是搜索)那就很可能是dp了

DP是求最优解的问题
是运筹学的一个分支;
如 : 最长不降子序列,最长上升子序列,背包问题.....
贪心只能骗分,但有些题是针对贪心的数据,其实是DP
如:合并果子....
想在题目上骗分,请看<骗分导论>
也不要因为想要骗分而忘记了日常算法的积累;
现在的编程注重DP,所以DP虽然难,但不可不学!
祝OI你早日1=;

唔..区别很大

当你归纳出某种原理时
可以不用考虑其它情况
直接选择某个最优情况
这就是贪心

而动态规划
是当你无法贪心的时候
如果你能够将这个问题分为一个个步骤
而且前后之间是分离的
这样的话,你可以得出一个从上一个步骤转移到下一个步骤的公式
这就是动态规划

而用贪心的时候一般也可以用动规
但是因为一般贪心的复杂度要小得多
所以一般能贪则贪,不能贪就考虑动规吧
如果都不能,再去考虑枚举搜索模拟这一类的