刚学习了动态规划算法,结合自己的理解写下这篇博客,如有不当之处,还请不吝赐教~
原理
动态规划算法是根据之前的最优解,再加上当前结点的值而得到新的最优解。若此时得到的解并没有之前的大,那么仍然把之前的作为最优解。
优点
即便是在当前的数据集中再加入一个,也不需要再重新计算整个数据集,只需要用新的数据集计算的值与之前的最优解作比较即可。体现的正是将大问题划成一个个小问题逐一解决,最后得到大问题的解这一思想。
注意
1.每个数据的添加顺序不会影响结果
2.若加入的数据不为整数了,而是小数,由于粒度更细,此时并没有小数的小问题最优解可用于后面的处理,因此这时就需要重新调整网格
3.仅当每个子问题都是离散的,即不依赖其他子问题时,动态规划才管用