首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。 【说明】设有n个货物要装入若干个容重为C的集装箱以便运输,这n个货物的体积分别为{s1,s2,…,sn],且有si≤C(1≤i≤n)。为节省运输成本,用尽可能少的集装箱来装运这n个货物
阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。 【说明】设有n个货物要装入若干个容重为C的集装箱以便运输,这n个货物的体积分别为{s1,s2,…,sn],且有si≤C(1≤i≤n)。为节省运输成本,用尽可能少的集装箱来装运这n个货物
admin
2014-11-13
50
问题
阅读下列说明和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
intfirs七fit()(
inti,j;
k=0;
for(i=0;i
b
=0;
}
for(i=0;i
(1);
while(C—b[j]
){
j++;
}
(2);
k=k>(j+1)?k:(j+1);
}
returnk;
}
(3)函数bestfit
intbestfit(){
inti,j,min,m,temp;
k=0;
for(i=0;i
b
=0;
}
for(i=0;i
min=C;
m=k+1:
for(j=0;j
temp=c—b[j]一s
;
if(temp>O&&temp
(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啪>=s
的集装箱。但条件c-b[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/opDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
启动init进程前,不需要经过______步骤。A.LIIO加载内核B.检测内存C.加载文件系统D.启动网络支持在系统控制台,______用Ctrl+Alt+Delete组合键来重新引导服务器。A.允许B
启动init进程前,不需要经过______步骤。A.LIIO加载内核B.检测内存C.加载文件系统D.启动网络支持Linux系统运行级别3工作在______状态。A.单用户字符模式B.多用户字符模式
阅读以下说明,回答问题1至问题8。[说明]Linux系统开机引导时首先启动内核,由内核检查和初始化硬件设备,载入设备的驱动程序模块,安装root文件系统,然后内核将启动一个名为init的进程。在init运行完成并启动其他必要的后续进程后,
网络设计流程通常由以下五个阶段组成:A.确定网络物理结构B.确定网络逻辑结构C.对现有网络的体系结构进行分析D.安装和维护E.需求分析根据网络开发设计的过程,给出上述五个阶段的先后排序:(1)。有线
网络设计流程通常由以下五个阶段组成:A.确定网络物理结构B.确定网络逻辑结构C.对现有网络的体系结构进行分析D.安装和维护E.需求分析根据网络开发设计的过程,给出上述五个阶段的先后排序:(1)。将答
阅读以下说明,回答问题1至问题4。【说明】某学校计划建立校园网,拓扑结构如图12-1所示。该校园网分为核心、汇聚和接入三层,由交换模块、广域网接入模块、远程访问模块和服务器群四大部分构成。
请阅读下列SwitchA的配置信息,并在(1)~(5)处解释该语句的作用。Switch>enable(进入特权模式)Switch#configterminal(进入配置模式)Switch(config)#hostnameSwi
DHCP允许服务器向客户端动态分配Ⅲ地址和配置信息。客户端可以从DHCP服务器获得(1)。(1)A.DHCP服务器的地址B.Web服务器的地址C.DNS服务器的地址在DHCP服务器安装完成后,DHCP控制台如图3-4所示。
DHCP允许服务器向客户端动态分配Ⅲ地址和配置信息。客户端可以从DHCP服务器获得(1)。(1)A.DHCP服务器的地址B.Web服务器的地址C.DNS服务器的地址图3-3是DHCP服务器安装中的添加排除窗口。 参照图
在控制面板的“添加/删除程序”对话框中选择(1),然后进入“应用程序服务器”选项,在(2)组件复选框中选择“文件传输协议(FTP)服务”,就可以在Windows2003中安装FTP服务。(1)A.更改或删除程序B.添加新程序C.添加/删除
随机试题
影响城市规划的自然环境条件中,叙述正确的是()。
某建设项目建筑工程费为5000万元,安装工程费用为1800万元,设备购置费为400万元,工程建设其他费用为500万元。已知基本预备费率5%,项目前期年限1年,建设期2年,各年度完成投资比例分别为60%与40%,年均投资价格上涨率为6%。则该项目建设期第二年
关于混凝土施工缝的留置位置的做法,正确的是()。
考察企业资产易于立即变现,具有即时支付能力的指标是()。
甲公司为上市公司,属于噌值税一般纳税人,增值税税率为17%,主营日用品产品的生产和销售。2014年1月甲公司内审部门在对甲公司2013年会计处理进行检查时,发现了如下交易或事项:(1)2013年1月1日,甲公司董事会决定对直销的专营店采取奖励积分措施,以
北京时间7月14日3点20分世界杯决赛在里约热内卢(22°57’S’43°12’W)的球场正式开始,直播期间电视台播放雕像(位于山顶,高30米)拥抱太阳画面成功抢镜(左下图为地理位置示意图,右下图为直播画面),据此回答下列问题。若在同一地点同一时刻再
关于20世纪70年代兴起的新人文主义教育思潮的特点,下列描述正确的是()
设X1,X2,…,X9。是来自正态总体N(1,σ2)的简单随机样本,为其样本均值,S2为其样本方差.记统计量,若P{-2<T<0}=0.3,则P{T>2}=()
•LookatthestatementsbelowandatthefiveshortadvertisementsforMBA(MasterinBusinessAdministration)coursesontheo
NomatterhowmanytimesyouhaveseenimagesofthegoldenmaskofboykingTutankhamen,comefacetofacewithitinEgypt’sCa
最新回复
(
0
)