- 18
- 0
- 约1.5千字
- 约 2页
- 2022-04-23 发布于广西
- 举报
0-1背包问题 (C++代码实现)
2021.10.17
复习软考的时候,翻看软件设计师考试32 时通关时发现P143页0-1背包问题答案有误,特此记录⼀下。
结合算法设计与分析课程所学习到的0-1背包求解⽅法,特此编写⼀个c++程序求解该问题。
代码如下:
#include iostream
using namespace std ;
#define n 5 // 商品数量
#define C 100 // 背包容量
int P[n+1][C+1], ec[n+1][C+1] ;
void knapsack(int p[], int v[]) // p[n]代表各商品价值,v[n]代表各商品体积
{
for (int i = 0; i = C; i++) // 初始化
{
P[0][i] = 0;
}
for (int i = 0; i = n; i++) // 初始化
{
P[i][0] = 0;
}
// 求解表格
for (int i = 1; i = n; i++)
{
for (int c = 1; c = C;
原创力文档

文档评论(0)