摘要:
本人不才,虽然学过运筹学,但早已忘了个干净,最近在看面试题,发现DP问题非常普遍,而我总喜欢用递归搜索的思维方式去解决DP问题,做了几道题才发现自己根本没有理解DP,也没有使用DP。所以在看到01背包问题的解的时候百思不得其解。相信不少人跟我一样也会对01问题的递推公式不理解,下面就通过一道程序的打印结果来分析一下到底DP在程序中是如何运作的。设总的背包大小是V,申请一个大小是V的数组f[V]来存储中间结果。下面要开始发挥想象力了:想象一下,现在你有V个从1到V容量连续变化的V个背包(而不是只有一个背包),第一步迭代: 不论目前手边有多少个物件,首先拿起第一个物件1,在手里掂量掂量,看起来可. 阅读全文