2018/9/13训练日记

版权声明:抱最大的希望,为最大的努力,做最坏的打算。 https://blog.csdn.net/qq_37748451/article/details/82694708

这几天还是一直在刷pku的题,还有把网络赛没出的B题补了一补,记忆化搜索+dp

什么是记忆化搜索呢?记忆化搜索采用搜索的形式和动态规划中递推的思想将这两种方法有机地综合在一起,扬长避短,简单实用,在信息学中有着重要的作用。 
用一个公式简单地说:记忆化搜索=搜索的形式+动态规划的思想。 

网上有人说用dp做的题都可以用记忆化搜索去做,感觉emmmm

仔细去想了想,也查了些资料

dp和记忆化搜索原理都是相同的,只是实现方法不同

可以明显的发现有以下几点不同:

1、DP是从下向上,而记忆化搜索是从上向下的

2、DP是从下向上,为了求到最终结果需要把过程中所有的值都保存下来,以便下一步可能会使用,

而因为记忆化搜索是从上向下的,所以求解过程求的都是需要的;也就是说不需要的值并没有求

3、记忆化搜索使用递归实现的,从上面的代码可以看出

如果一个dp[i][j]的值已经求过,使用DP直接调用即可;而使用记忆化搜索则要进入递归

如果一个dp[i][j]的值还未求过,使用DP直接求得,而使用记忆化搜索则要进入递归中去求,而这个递归很有可能是多重的

这样一来DP在时间上几乎总是优于记忆化搜索的。。

emmm,总之,之后遇见的题哪个好想就写哪个吧

猜你喜欢

转载自blog.csdn.net/qq_37748451/article/details/82694708
今日推荐