for i←1 to n do:
for j←0 to C do:
if w[i]≤j :
dp[i][j]=max(dp[i-1][j],dp[i-1][j-wi]+vi)
end
else:
dp[i][j]=dp[i-1][j]
end
end
end
return dp[n][C]
伪代码更改版——01背包
最新推荐文章于 2024-08-23 15:15:47 发布
for i←1 to n do:
for j←0 to C do:
if w[i]≤j :
dp[i][j]=max(dp[i-1][j],dp[i-1][j-wi]+vi)
end
else:
dp[i][j]=dp[i-1][j]
end
end
end
return dp[n][C]