首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
(2021年下半年下午试题四)阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。 【说明】 设有n个货物要装入若干个容重为C的集装箱以便运输,这n个货物的体积分别为{s1,s2,…,sn},且有si≤C(1≤i≤n)。为
(2021年下半年下午试题四)阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。 【说明】 设有n个货物要装入若干个容重为C的集装箱以便运输,这n个货物的体积分别为{s1,s2,…,sn},且有si≤C(1≤i≤n)。为
admin
2018-07-27
44
问题
(2021年下半年下午试题四)阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。
【说明】
设有n个货物要装入若干个容重为C的集装箱以便运输,这n个货物的体积分别为{s1,s2,…,sn},且有si≤C(1≤i≤n)。为节省运输成本,用尽可能少的集装箱来装运这n个货物。
下面分别采用最先适宜策略和最优适宜策略来求解该问题。
最先适宜策略(firstfit)首先将所有的集装箱初始化为空,对于所有货物,按照所给的次序,每次将一个货物装入第一个能容纳它的集装箱中。
最优适宜策略(bestfit)与最先适宜策略类似,不同的是,总是把货物装到能容纳它且目前剩余容重最小的集装箱,使得该箱子装入货物后闲置空间最小。
【C代码】
下面是这两个算法的C语言核心代码。
(1)变量说明
n:货物数
C:集装箱容量
s:数组,长度为n,其中每个元素表示货物的体积,下标从0开始
b:数组,长度为n,b
表示第n+i个集装箱当前已经装入货物的体积,下标从0开始
i,j:循环变量
k:所需的集装箱数
min:当前所用的各集装箱装入了第i个货物后的最小剩余容量
m:当前所需的集装箱数
temp:临时变量
(2)函数firstfit
int firstfit(){
int i,j;
k=0;
for(i=0;i<n;i++){
b
=0;
}
for(i=0;i<n;i++){
_____(1);
while(C-b[j]<s
){
j++;
}
_______(2);
k=k>(j+1)?k:(j+1);
}
return k;
}
(3)函数bestfit
int bestfit(){
int i,j,min,m,temp;
k=0;
for(i=0;i<n;i++){
b
=0;
}
for(i=0;i<n;i++){
min=C;
m=k+1;
for(j=0;j<k+1;j++){
temp=C-b[j]-s
;
if(temp>0 &&temp<min){
______(3);
m=j;
}
}
______(4);
k=k>(j+1)?k:(j+1);
}
return k;
}
根据【说明】和【C代码】,填充C代码中的空(1)~(4)。
选项
答案
(1)j=0 (2)b[j]=b[j]+s[i] (3)min=temp (4)b[m]=b[m]+s[i]
解析
本题描述的算法包括最先适宜算法和最优适宜算法。其中,最先适宜算法要求按顺序给货物找到一个能容纳它的集装箱,找到即可装箱。这里的关键在于找到第一个能容纳它的集装箱,从头到尾遍历各集装箱即可。firstfit函数用于实现最先适宜算法。定位到空(1)处,其上面的for循环用于对所有n个货物进行遍历,分别找出满足条件C-b[j]>=s
的集装箱。但条件C-b[j]<s
中的变量j在空(1)前并没有显式的赋值语句,且遍历各集装箱应从第一个开始,因此空(1)处应填入j=0。空(2)处表示货物已放入集装箱的情况,应更新装入货物后的体积,因此空(2)处应填入b[j]=b[j]+s
。
最优适宜算法不仅要找到能容纳货物的集装箱,而且还要求该集装箱的剩余容量最小。bestfit函数用于实现最优适宜算法。该函数的for循环语句中的temp表示剩余的最小容量,若其小于min,则应更新其值。因此,空(3)处应填入min=temp。和firstfit函数中空(2)处类似的思路,空(4)处应填入b[m]=b[m]+s
。
转载请注明原文地址:https://kaotiyun.com/show/e7DZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
假如有一台PC连接在如图10-1所示的交换机(10/100M自适应的交换机)上,通信正常,但是将100M的网卡连到交换机上时显示红灯,通信不正常,请分析故障原因并给予解决。交换机设置了两个VLAN,在同一VLA_N内的机器不在同一网段上,它们可以通信吗
请问无线局域网的工作模式有哪几种?常见的无线网络协议有哪些?
从图7-1中可以看出采用什么拓扑结构与设计方法?为了进一步简化系统,有人建议把“电脑模块”与“电话模块”合成一个模块,其传输介质共用,这可以实现吗?
在由L2TP构建的VPN中,主要由(1)和(2)两种类型的服务器构成。1.将图2-7中(1)和(2)处空缺名称填写在相应位置。2.简要说明两种服务器的主要作用。某路由器(在图2-7中没有标出)的部分配置信息如下所示,请解释其中注明部分的
由于面向3G移动电话的电子商务网站看不到用户进行销售服务,因此,对用户身份进行认证是必要。通常,在Internet中进行电子签名的认证过程如下:①文件的发送者将要发送的文件生成(1);②用发送者的(2)对摘要加密后,将其添加到文件中;
认真阅读下列有关移动用户身份认证技术的说明,根据要求回答问题1至问题4。【说明】随着无线局域网技术、3G移动通信技术的不断发展,网络资源得到了更广泛的利用。由于移动环境下的通信链路比较容易受到恶意攻击或窃听,因此在移动节点与本地代理1之间交换的登
认真阅读下列有关Linux操作系统的Samba配置技术的说明,根据要求回答问题1至问题6。【说明】SMB(ServerMessageBlock,服务消息块)协议主要用于实现Windows和Linux操作系统中计算机之间共享打印机、共享串行接
为了便于用户下载相关资料,特安装一台FTP服务器,其服务器端软件是Serv-U,假如要增加一个名为CIU10009的用户,对应目录为D盘,且要求加密,在图6-4中怎么设置?假如用户人数达到1000,为了保证100个用户同时正常下载,请问在图6-4中怎么
为了便于用户下载相关资料,特安装一台FTP服务器,其服务器端软件是Serv-U,假如要增加一个名为CIU10009的用户,对应目录为D盘,且要求加密,在图6-4中怎么设置?假如要封闭某用户的账号,请问在图6-4中怎么设置?
在图8-12所示的拓扑结构中的代理服务器上依次单击“开始→程序→管理工具→路由与远程访问,并在系统弹出的界面中打开“IP路由选择”目录树,然后用鼠标右键单击“NAT/基本防火墙”,选择[新增接口]命令。接着若选择接口1的“本地连接”,最后进行如图8-13所
随机试题
女性患者,50岁,心悸,心电图示房颤,胸片及PDE检查未见心脏结构异常,查体可见
男性,33岁,无过敏反应史,但有主动脉瓣关闭不全,准备进行牙齿的职业性清洁女性,58岁,由于二尖瓣脱垂而造成二尖瓣反流杂音,因血尿将进行膀胱镜检查。
A.瑞舒伐他汀B.阿托伐他汀C.吉非罗齐D.非诺贝特E.氟伐他汀含有3,5-二羟基羧酸活性结构和嘧啶环骨架的HMG-CoA还原酶抑制剂调血脂药物是()。
城乡规划编制单位取得资质证书后,不再符合相应资质条件的,由原发证机关责令()
下列属于胶凝材料的是()。
每年科学家都统计在主要繁殖地聚集的金蟾蜍的数量。在过去十年中,每年聚集在那里的金蟾蜍的数量从1500只下降到200只。显然,在过去的十年中,金蟾蜍的数量在急剧下降。以下哪项如果为真,能使上文中的结论适当地得出?
打开VisualFoxPro的“项目管理器”的“文档”选项卡,其中包含______。
在考生文件夹下,打开文档WORDl.docx,按照要求完成下列操作并以该文件名(WORD1.docx)保存文档。【文档开始】为什么成年男女的声调不一样?大家都知道,女人的声调一般比男人的“尖高”。可是,为什么会这样呢?人的解剖结构告诉我们,男人和女人的
Shortsharptermsmakebigpointsclear.Butpeopleoftenprefertosoftentheirspeechwitheuphemism:amixtureofabstraction
Peopleinsunny,outdoorsystates—Louisiana,Hawaii,Florida—saytheyarethehappiestAmericans,andresearchersthinktheykno
最新回复
(
0
)