mirror of
				https://github.com/krahets/hello-algo.git
				synced 2025-11-04 22:28:40 +08:00 
			
		
		
		
	Fix a figure.
This commit is contained in:
		@ -26,12 +26,12 @@
 | 
			
		||||
 | 
			
		||||
**第二步:找出最优子结构,进而推导出状态转移方程**
 | 
			
		||||
 | 
			
		||||
当我们做出物品 $i$ 的决策后,剩余的是前 $i-1$ 个物品的决策。因此,状态转移分为两种情况:
 | 
			
		||||
当我们做出物品 $i$ 的决策后,剩余的是前 $i-1$ 个物品的决策,可分为以下两种情况。
 | 
			
		||||
 | 
			
		||||
- **不放入物品 $i$** :背包容量不变,状态转移至 $[i-1, c]$ 。
 | 
			
		||||
- **放入物品 $i$** :背包容量减小 $wgt[i-1]$ ,价值增加 $val[i-1]$ ,状态转移至 $[i-1, c-wgt[i-1]]$ 。
 | 
			
		||||
- **不放入物品 $i$** :背包容量不变,状态变化为 $[i-1, c]$ 。
 | 
			
		||||
- **放入物品 $i$** :背包容量减小 $wgt[i-1]$ ,价值增加 $val[i-1]$ ,状态变化为 $[i-1, c-wgt[i-1]]$ 。
 | 
			
		||||
 | 
			
		||||
上述的状态转移向我们揭示了本题的最优子结构:**最大价值 $dp[i, c]$ 等于不放入物品 $i$ 和放入物品 $i$ 两种方案中的价值更大的那一个**。由此可推出状态转移方程:
 | 
			
		||||
上述分析向我们揭示了本题的最优子结构:**最大价值 $dp[i, c]$ 等于不放入物品 $i$ 和放入物品 $i$ 两种方案中的价值更大的那一个**。由此可推出状态转移方程:
 | 
			
		||||
 | 
			
		||||
$$
 | 
			
		||||
dp[i, c] = \max(dp[i-1, c], dp[i-1, c - wgt[i-1]] + val[i-1])
 | 
			
		||||
 | 
			
		||||
										
											Binary file not shown.
										
									
								
							| 
		 Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 78 KiB  | 
		Reference in New Issue
	
	Block a user