POJ1661——Help Jimmy(关于动态规划)

总结:

1.用动态规划解题,关键是要找出"状态"和状态间进行转移的方法(即状态转移过程)

2.一般在动态规划的时候所用到的一些数组,也就是用来存储每个状态的最优值。

搜索的实现:

方式1:递归——剪枝

1.整个搜索过程中,最终状态始终不变

2.不要考虑明显不能达到最终状态的路径

方式2:动态规划

目的:

1.在搜索过程中,把计算的结果保留下来

2.在后面的搜索过程中,努力使用前面搜过过程中的结果,避免重复计算

方法:

1.把最终目标分解成一些相对简单的目标

2.先实现这些相对简单的目标,在此基础上实现最终的目标

具体使用那种方式?视情况而定

1.没有什么重复的计算可以使用:使用递归——为保持简洁

2.重复的计算占的比重很大:动态规划,为提高效率

 

你可能感兴趣的:(OJ,数据结构与算法)