中_级软件设计师问答集考试卷模拟考试题_第1页
中_级软件设计师问答集考试卷模拟考试题_第2页
中_级软件设计师问答集考试卷模拟考试题_第3页
中_级软件设计师问答集考试卷模拟考试题_第4页
免费预览已结束,剩余2页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、姓名:_ 班级:_ 学号:_-密-封 -线- 中_级软件设计师问答集考试卷模拟考试题考试时间:120分钟 考试总分:100分题号一二三四五总分分数遵守考场纪律,维护知识尊严,杜绝违纪行为,确保考试结果公正。1、阅读下列函数说明和c代码,填入(n)处字句,并回答相应问题。说明背包问题就是有不同价值、不同重量的物品n件,求从这n件物品中选取一部分物品的选择方案,使选中物品的总重量不超过指定的限制重量,而且选中物品的价值之和为最大。背包问题是一个典型的np完全难题。对该问题求解方法的研究无论是在理论上,还是在实践中都具有一定的意义。如管理中的资源分配、投资决策、装载问题等均可建模为背包问题。常用的背

2、包问题求解方法很多,但本题中采用了一种新的算法来求解背包问题。该算法思想为:首先要对物品进行价重比排序,然后按价重比从大到小依次装进包裹。这种方法并不能找到最佳的方案,因为有某些特殊情况存在,但只要把包中重量最大的物品取出,继续装入,直到达到limitweight,这时的物品就是limitweight的最大价值。这种算法不需要逐个进行试探,所以在数据非常大时,执行效率主要由排序的时间复杂度决定。该算法的流程图为图11-4。仔细阅读程序说明和c程序流程图及源码,回答问题1和问题2。流程图11-4程序说明struct thing:物品结构typedef struct bag:背包结构类型input

3、 ( ):将物品按序号依次存入数组函数inbag ( ):物品按物价比入包函数init ( ):初始化函数sort ( ):对物品按价格重量比排序函数outbag ( ):取出包中weiht最大的物品函数print ( ):最佳方案输出函数c程序#define n 255struct thingdouble weight;double value;double dens;thingn;typedef stmct bag thingthing n;doubleweighttmp;doublesumvalue;bag,best;inbag ( )dobag.thingi=thingi(1)(2)i

4、+;while (3)init ( )for (inti=0; in; i+)input (thingi.weight, thingi.value)thing i.dens=thingi.value/thingi.weight;main ( )init ( );sort ( );inbag ( );do best=bag; /把包中物品放入暂存数组outbag ( );/取出包中weight最大的物品(4)while (5)print (best); /输出temp因为是最佳方案问题1根据程序说明及流程图、部分c源码,充分理解算法思想,填入(n)处。( )2、阅读下列函数说明和c代码,填入(n

5、)处字句,并回答相应问题。说明背包问题就是有不同价值、不同重量的物品n件,求从这n件物品中选取一部分物品的选择方案,使选中物品的总重量不超过指定的限制重量,而且选中物品的价值之和为最大。背包问题是一个典型的np完全难题。对该问题求解方法的研究无论是在理论上,还是在实践中都具有一定的意义。如管理中的资源分配、投资决策、装载问题等均可建模为背包问题。常用的背包问题求解方法很多,但本题中采用了一种新的算法来求解背包问题。该算法思想为:首先要对物品进行价重比排序,然后按价重比从大到小依次装进包裹。这种方法并不能找到最佳的方案,因为有某些特殊情况存在,但只要把包中重量最大的物品取出,继续装入,直到达到l

6、imitweight,这时的物品就是limitweight的最大价值。这种算法不需要逐个进行试探,所以在数据非常大时,执行效率主要由排序的时间复杂度决定。该算法的流程图为图11-4。仔细阅读程序说明和c程序流程图及源码,回答问题1和问题2。流程图11-4程序说明struct thing:物品结构typedef struct bag:背包结构类型input ( ):将物品按序号依次存入数组函数inbag ( ):物品按物价比入包函数init ( ):初始化函数sort ( ):对物品按价格重量比排序函数outbag ( ):取出包中weiht最大的物品函数print ( ):最佳方案输出函数c程

7、序#define n 255struct thingdouble weight;double value;double dens;thingn;typedef stmct bag thingthing n;doubleweighttmp;doublesumvalue;bag,best;inbag ( )dobag.thingi=thingi(1)(2)i+;while (3)init ( )for (inti=0; in; i+)input (thingi.weight, thingi.value)thing i.dens=thingi.value/thingi.weight;main ( )init ( );sort ( );inbag ( );do best=bag; /把包中物品放入暂存数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论