答案:https://blog.csdn.net/yaojianguo1234/article/details/105525769?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163245985716780262541719%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=163245985716780262541719&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~baidu_landing_v2~default-1-105525769.pc_search_insert_js_new&utm_term=%E8%AF%A6%E7%BB%86%E4%BB%8B%E7%BB%8D%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92&spm=1018.2226.3001.4187|动态规划算法是将要解决的问题拆分成一系列相互交叠的子问题,通过推导关系定义子问题的求解策略,并随时记录子问题的解,最终获得原始解,避免子相互交叠子问题的重复求解(这里骂的是递归)
动态规划的三要素
(中间结果保存数组)#擅自加上的
最优子结构
状态转移方程
边界条件
(计算顺序) # 同1
最优子结构
每个阶段最优状态,可以从之前的某些状态得到;
边界条件
问题最小子集的解 #个人认为大部分应该是0,这个问题,因为大部分求解顺序从小到大
状态转移方程
相邻两个子问题之间的函数关系
中间结果保存数组----->子问题结构需要保存的,以便直接使用,空间换时间
计算顺序-------> 我能理解但是说不出来,还得学呀