信管网试题内容
信管网 导航

试卷名称:2019年下半年软件设计师考试下午真题试题(案例分析)

考试年份:2019年下半年

试题来源:《2019年下半年软件设计师考试下午真题试题(案例分析)》在线考试

试题内容

阅读下列说明和C代码,回答问题1至问题3。
【说明】
0-1背包问题定义为:给定i个物品的价值v[1…i]、小重量w[1...i]和背包容量T,每个物品装到背包里或者不装到背包里。求最优的装包方案,使得所得到的价值最大。
0-1背包问题具有最优子结构性质。定义c[i][T]为最优装包方案所获得的最大价值,则可得到如下所示的递归式。

【c代码】
下面是算法的C语言实现。
(1)常量和变量说明
T: 背包容量
v[]:价值数组
w[]:重量数组
c[][]:c[i][j]表示前i个物品在背包容量为j的情况下最优装包方案所能获得的最大价值
(2) C程序

【问题1】 (8分)
根据说明和C代码,填充C代码中的空(1) ~ (4)。
【问题2】 (4分)
根据说明和C代码,算法采用了 (5) 设计策略。在求解过程中,采用了(6)
(自底向上或者自顶向下)的方式。
【问题3】 (3分)
若5项物品的价值数组和重量数组分别为v[]= {0,1,6,18,22,28}和w[]= {0,1,2,5,6,7}背包容量为T= 11,则获得的最大价值为 (7)。
参考答案:暂时没有答案(仅供参考) 收藏

【解析】

普通会员无法查看试题解析。[开通试题解析服务]