首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和C语言代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 设某一机器由n个部件组成,每一个部件都可以从m个不同的供应商处购得。供应商j供应的部件i具有重量Wij和价格Cij设计一个算法,求解总价格不超过上限cc的最小重量的机器组成。
阅读下列说明和C语言代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 设某一机器由n个部件组成,每一个部件都可以从m个不同的供应商处购得。供应商j供应的部件i具有重量Wij和价格Cij设计一个算法,求解总价格不超过上限cc的最小重量的机器组成。
admin
2014-11-13
116
问题
阅读下列说明和C语言代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
设某一机器由n个部件组成,每一个部件都可以从m个不同的供应商处购得。供应商j供应的部件i具有重量W
ij
和价格C
ij
设计一个算法,求解总价格不超过上限cc的最小重量的机器组成。采用回溯法来求解该问题:首先定义解空间。解空间由长度为n的向量组成,其中每个分量取值来自集合{1,2,…,m},将解空间用树形结构表示。接着从根节点开始,以深度优先的方式搜索整个解空间。从根节点开始,根节点成为活节点,同时也成为当前的扩展节点。向纵深方向考虑第一个部件从第一个供应商处购买,得到一个新节点。判断当前的机器价格(C
11
)是否超过上限(cc),重量(W
11
)是否比当前已知的解(最小重量)大,若是,应回溯至最近的一个活节点;若否,则该新节点成为活节点,同时也成为当前的扩展节点,根节点不再是扩展节点。继续
向纵深方向考虑第二个部件从第一个供应商处购买,得到一个新节点。同样判断当前的机器价格(C
11
+C
21
)是否超过上限(cc),重量(W
11
+W
21
)是否比当前已知的解(最小重量)大。若是,应回溯至最近的一个活节点;若否,则该新节点成为活节点,同时也成为当前的扩展节点,原来的节点不再是扩展节点。以这种方式递归地在解空间中搜索,直到找到所要求的解或者解空间中已无活节点为止。
【C语言代码】
下面是该算法的C语言实现。
(1)变量说明
n:机器的部件数
m:供应商数
cc:价格上限
w[][]:二维数组,w
[j]表示第j个供应商供应的第i个部件的重量
c[][]:二维数组,c
[j]表示j个供应商供应的第i个部件的价格
bestlW:满足价格上限约束条件的最小机器重量
bestC:最小重量机器的价格
bestX[]:最优解,一维数组,bestX
表示第i个部件来自哪个供应商
CW:搜索过程中机器的重量
cp:搜索过程中机器的价格
x[]:搜索过程中产生的解,x
表示第i个部件来自哪个供应商
i:当前考虑的部件,从0到n—1
j:循环变量
(2)函数backtrack
intn=3;
intm=3;
int CC=4;
intw[3][3]={(1,2,3),(3,2,1),(2,2,2}};
intc[3][3]={(1,2,3),(3,2,1),(2,2,2}};
int bestW=8;
int bestC=0;
int bestX[3]=(0,0,0);
int CW=0;
int cp=0;
int x[3]=(0,0,0);
int backtrack(int i){
int j=0;
int found=0;
if(i>n一1){/*得到问题解*/
beStW=cw:
bestC=cp;
for(j=0;j
(1)______;
}
return 1:
}
if(cp<=cc)(/*有解*/
found=1:
}
for(j=0;(2))________;j++){
/*第i个部件从第j个供应商购买*/
(3)_______;
cw=cw+w
[j];
cp=cp+c
[j];
if(cp<=cc&&(4)________{/*深度搜索,扩展当前节点*/
if(back七rack(i+1))(found=1;)
}
/*回溯*/
cw=cw—w
[j];
(5)________;
}
returnfound:
}
选项
答案
(1)bestX[j]=x[i] (2)j
解析
本题中机器需要3个部件,共3个供应商,每个供应商可提供3种部件,供应商0提供的3个部件数量分别为1、2、3,价格分别为1、2、3;供应商1提供的3个部件数量分别为3、2、1,价格分别为3、2、1;供应商2提供的3个部件数量分别为2、2、2,价格分别为2、2、2。价格上限为4;初始时,满足价格上限约束条件的最小机器重量为8,最小重量机器的价格为0。在回溯过程中,先购买第0个部件,首选选择第0个供应商的部件0,计算总重量和总价格,如果总价值不大于上限cc,则扩展当前节点;然后购买第1个部件,同样先选择第0个供应商的部件1,计算总重量和总价格,如果总价值不大于上限cc,则扩展当前节点……如果当前总价格大于上限cc或者当前总重量比已知的最小重要大,则当前节点成为死节点,返回前一次购买部件所在的节点,同时更新总价值和总重量。因此可将空(2)~(5)补充完整,如下。
for(j=0;j
/*第i个部件从第j个供应商购买*/
x
=j;
cw=cw+w
[j];
cp=cp+c
[j];
if(cp<=cc&&cw
if[back七rack(1+1))ttound=1;,
}
/*回溯+/
CW=CW—w
[j];
cp=cp—c
[j];
}
如果得到问题解,将部件的总质量和总价值保存在变量bestW和bestC中,并将部件的来源保存在数组bestX中。数组x中保存搜索过程中产生的解,把x中的元素值赋给数组bestX即可。因此空(1)处应填入bestX[j]=x啪。
转载请注明原文地址:https://kaotiyun.com/show/7ZDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
根据图3-1所给出的网络连接方式及相关的网络参数,区域(A)与区域(B)中计算机的网络参数配置(如图3-2所示)为:区域(A)计算机“IP地址”(范围):(1):区域(A)计算机“子网掩码”;(2);区域(A)计算机“默认网关”:(
IIS安装的硬盘分区最好选用NTFS格式,是因为(1)和(2)。A.可以针对某个文件或文件夹给不同的用户分配不同的权限B.可以防止网页中的Applet程序访问硬盘中的文件C.可以使用系统自带的文件加密系统对文件或文件夹进行加密
销售部的网络号是(1),广播地址是(2):技术部的网络号是(3),广播地址是(4);每个子网可用的IP地址有(5)个。在网关计算机上使用以下路由命令创建两个默认的路由:routeadd-net192.168.1.0255.255.2
销售部的网络号是(1),广播地址是(2):技术部的网络号是(3),广播地址是(4);每个子网可用的IP地址有(5)个。在网关计算机/etc/sysconfig/network-scripts/目录中有以下文件,运行某命令可以启动网络,该命令是(9),其
阅读以下说明,回答问题1至问题4。【说明】图5-1是VLAN配置的结构示意图。
DHCP允许服务器向客户端动态分配Ⅲ地址和配置信息。客户端可以从DHCP服务器获得(1)。(1)A.DHCP服务器的地址B.Web服务器的地址C.DNS服务器的地址在DHCP服务器安装完成后,DHCP控制台如图3-4所示。
阅读以下说明,回答问题1至问题5。【说明】某网络拓扑结构如图3-1所示,DHCP服务器分配的地址范围如图3-2所示。
阅读以下说明,回答问题1至问题4。【说明】2007年春,ARP木马大范围流行。木马发作时,计算机网络连接正常却无法打开网页。由于ARP木马发出大量欺骗数据包,导致网络用户上网不稳定,甚至网络短时瘫痪。
在控制面板的“添加/删除程序”对话框中选择(1),然后进入“应用程序服务器”选项,在(2)组件复选框中选择“文件传输协议(FTP)服务”,就可以在Windows2003中安装FTP服务。(1)A.更改或删除程序B.添加新程序C.添加/删除
阅读以下说明,回答问题1至问题4。【说明】网络工程师经常会面对服务器性能不足的问题,尤其是网络系统中的核心资源服务器,其数据流量和计算强度之大,使得单一计算机无法承担。可以部署多台Linux服务器组成服务器集群,采用负载均衡技术提供服务。
随机试题
我国现存最早记载大量医学史料的著作是()。
当某种新的治疗方法仅能延长某病患者的寿命而不能使其彻底治愈,将出现()
下面甲状腺素中不含碘的是
A.虚中夹实B.真虚假实C.实中夹虚D.由实转虚E.因虚致实患者外感热病出现高热、烦渴欲饮、尿少便干等主要表现,邪正盛衰病机是()。
设备制造阶段的监理工作包括( )。
对同一课税对象,无论其数额大小,都按照相同比例征税的税率是()。
新旧民主主义革命的根本区别是革命领导阶级不同。()
堵车现象并非只存在于个别国家,但不同的国家有不同的对策,德国消除“高峰”时段,以色列让自行车取代汽车,西班牙大力发展公共交通等。这种现象说明:①辩证的否定是联系的环节②要坚持一切从实际出发,实事求是③矛盾的普遍性与特殊性相统一④哲学是指导人们生活得
在窗体上画一个名称为Commandl的命令按钮,再画两个名称分别为Labell、Label2的标签,然后编写如下程序代码:PrivateXAsIntegerPrivateSubCommandl_Click()
Opinionpollsarenowbeginningtoshowanunwillinggeneralagreementthat,whoeveristo【21】andwhateverhappensfromnowon,
最新回复
(
0
)