01背包动态规划

动态规划求解容量限制下物品最大价值,可视化DP状态转移表格

阶段: 就绪 最大价值: - 选中物品: - 状态: 就绪

算法说明

时间复杂度:O(nV),n为物品数,V为背包容量

空间复杂度:O(nV),可优化至O(V)

核心思想:定义 dp[i][w] 为前 i 个物品在容量 w 下的最大价值。对每个物品分「不选」和「选」两种决策取最大值。填表完成后从右下角回溯,若 dp[i][w] ≠ dp[i-1][w] 则说明选中了第 i 个物品。

核心代码