首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
(1)nv[i-1][j]≥nv[i-1][j-p[i]]+v[i] (2)nv[i][j]=nv[i-1][j] (3)j=j-p[i] 问题1中伪代码的时间复杂度为(6)(用O符号表示)。
(1)nv[i-1][j]≥nv[i-1][j-p[i]]+v[i] (2)nv[i][j]=nv[i-1][j] (3)j=j-p[i] 问题1中伪代码的时间复杂度为(6)(用O符号表示)。
admin
2009-02-01
89
问题
(1)nv[i-1][j]≥nv[i-1][j-p
]+v
(2)nv
[j]=nv[i-1][j] (3)j=j-p
问题1中伪代码的时间复杂度为(6)(用O符号表示)。
选项
答案
(6)O(nM),或O(n×M),或O(n*M)
解析
本题实质上是一个0-1背包问题,该最优化问题的目标函数是
max[*]ViXi(Xi=0,1)
i=1
约束函数是
[*] PiXi≤M (xi=0,1)
0-1背包问题可用动态规划策略求得最优解,求解的递归式为
[*]
其中,nv
[j]表示由前i项食物组合且价格不超过j的套餐的最大营养价值。问题最终要求的套餐的最大营养价值为nv[n][M]。根据上述递归式,可以很容易以自底向上的方式编写伪代码。[问题1]中伪代码的第1行到第12行计算数组nv的元素值,第1行到第4行计算i为0或者j为0时nv
[j]的值,对应递归式的第一种情况;第7行和第8行计算当j<pi时即不能选择mi时nv
[j]的值,对应递归式的第二种情况:第9到第12行对应递归式的第三种情况,故根据递归式,空(1)的答案为nv[i-1][j]≥nv[i-1][j-p
] +v
。伪代码的第13行到第19行求解哪些食物放入到套餐中,食物项从后向前考虑,若nv
[j]=nv[i-1][j],表示食物mi没有放入套餐中,即x
=0,故空(2)的答案为nv
[j]=nv[i-1][j]。相反,若食物mi放入套餐中,则x
=1,同时套餐还能选择不超过j-p
的价格的食物,故空(3)的答案为j=j-p
。
问题2的实例要求总价格不超过100,根据上述递归式,计算出要选择的食物项为 m2、m3和m4,对应的总价值为605,总价格为100。
根据问题1的伪代码,第1行到第2行、第3行到第4行以及第14行到19行的时间复杂度为O(n),第5行到第12行的时间复杂度为O(nM)。故算法总的时间复杂度为 O(nM)。
转载请注明原文地址:https://kaotiyun.com/show/f5DZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
(12)是指把数据以及操作数据的相关方法组合在同一个单元中,使我们可以把类作为软件中的基本复用单元,提高其内聚度,降低其耦合度。面向对象中的(13)机制是对现实世界中遗传现象的模拟,通过该机制,基类的属性和方法被遗传给派生类。
用等价类划分法设计8位长数字类型用户名登录操作的测试用例,应该分成(44)个等价区间。
对需求说明书评测的内容包括______。①系统定义的目标是否与用户的要求一致②被开发项目的数据流与数据结构是否足够、确定③与所有其他系统交互的重要接口是否都已经描述④主要功能是否已包含在规定的软件范围之内,是否都已充分说明
以下关于软件生命周期的叙述不正确的是______。A.软件生命周期包括以下几个阶段:项目规划、需求定义和需求分析、软件设计、程序编码、软件测试、运行维护B.程序编码阶段是将软件设计的结果转换成计算机可运行的程序代码。为了保证程序的可读性、易维护性和提高
对于逻辑表达式((a&b)||c,需要______个测试用例才能完成条件组合覆盖。
模块设计中,某模块根据输入的控制信息从文件中读一个记录或者向文件中写一个记录,则其内聚类型为______。
针对以下C语言程序段,假设sta[10]=-1,对于x的取值,需要______个测试用例能够满足分支覆盖的要求。intMathMine(intx){intm=0;inti;for(i=x-1;i<=x+1;
设系统中有R类资源m个,现有n个进程互斥使用。若每个进程对R资源的最大需求为w,那么当m、n、w取下表的值时,对于下表中的a~e五种情况,(26)两种情况可能会发生死锁。对于这两种情况,若将(27),则不会发生死锁。
随机试题
请解释偏见、成见、生搬硬套以及歧视之问的关系。
下列属于霍奇金病Ⅲ期的是
工业企业销售应税消费品应交纳的消费税,应借记()科目,贷记“应交税费———应交消费税”科目。
物流标准化的基点是()。
学生可以通过倾听别人的陈述、看书等途径来了解禽流感,这种学习属于()学习。
一个办公室有2男3女共5个职员,从中随机挑选出2个人参加培训,那么至少有一个男职员参加培训的可能性有多大?
信用产生于货币作为()职能。
假定MyClass为一个类,则该类的拷贝构造函数的声明语句为()
下列叙述中正确的是
InEnglandrecentlythreeforeigngentlemenapproachedabusstop.Theystudiedtheinformationonthesignattachedtotheconc
最新回复
(
0
)