1 / 14
文档名称:

回溯法实验.docx

格式:docx   大小:95KB   页数:14页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

回溯法实验.docx

上传人:suijiazhuang2 2022/4/13 文件大小:95 KB

下载得到文件列表

回溯法实验.docx

文档介绍

文档介绍:精品资料,欢迎大家下载!
以上资料仅供参考,如有侵权,留言删除!
算法分析与设计实验报告
姓名
学号
班级
第工次附加实验
精品资料,欢迎大家下载!
以上资料仅供参考,如有侵权,留言删除!
时间
,classTypep>classKnap//Knap类记录解空间树的结点信息{
int);
template<classTypew,classTypep>friendTypepKnapsack(Typep[],Typew[],Typew,private:
TypepBound(inti);〃计算上界的函数voidBacktrack(inti);//回溯求最优解函数Typewc;//包包容量intn;//物品数Typew*w;//物品重量数组Typep*p;//物品价值数组Typewcw;//当前重量
精品资料,欢迎大家下载!
以上资料仅供参考,如有侵权,留言删除!
精品资料,欢迎大家下载!
以上资料仅供参考,如有侵权,留言删除!
Typepcp;//当前价值
精品资料,欢迎大家下载!
以上资料仅供参考,如有侵权,留言删除!
精品资料,欢迎大家下载!
以上资料仅供参考,如有侵权,留言删除!
Typepbestp;//当前最后价值};
精品资料,欢迎大家下载!
以上资料仅供参考,如有侵权,留言删除!
template<classTypew,classTypep>TypepKnapsack(Typepp[],Typeww[],Typewc,intn);//声明背包问题求解函数template<classType>inlinevoidSwap(Type&a,Type&b);〃声明交换函数template<classType>voidBubbleSort(Typea[],intn);〃声明冒泡排序函数intmain(){
intn;//物品数
intc;//包包容量
cout<<〞物品个数为:〞;
cin>>n;
cout<<"包包容量为:";
cin>>c;
int*p=newint[n];//物品价值下标从1开始
int*w=newint[n];//物品重量下标从1开始
cout<<"物品重量分别为:"<<endl;
for(inti=1;i<=n;i++)
(cin>>w[i];
}
cout<<"物品价值分别为:"<<endl;
for(inti=1;i<=n;i++)〃以二元组(重量,价值)的形式输出每物品的信息
(cin>>p[i];
}
cout<<〞物品重量和价值分别为:"<<endl;
for(inti=1;i<=n;i++)〃以二元组(重量,价值)的形式输出每个物品的信息
(cout<<"("<<w[i]<<","<<p[i]<<")";
精品资料,欢迎大家下载!
以上资料仅供参考,如有侵权,留言删除!
}
cout<<endl;
cout<<"背包能装下的最大价值为:"<<Knapsack(p,w,c,n)<<endl;//输出结果
system("pause");
return0;
精品资料,欢迎大家下载!
以上资料仅供参考,如有侵权,留言删除!
template<classTypew,classTypep>voidKnap<Typew,Typep>::Backtrack(inti)(
if(i>n)//到达叶子节点
(bestp=cp;//更新最优值return;
}
if(cw+w[i]<=c)//进入左子树
(cw+=w[i];cp+=p[i];Backtrack(i+1);〃回溯//回溯结束回到当前根结点cw-=w[i];cp-=p[i];
}
〃进入右子树,条件是上界值比当前最优值大,否那么就将右子树剪掉
if(Bound(i+1)>bestp)
精品资料,欢迎大家下载!
以上资料仅供参考,如有侵权,留言删除!
Backtrack(i+1);
}}template<classTypew,classTypep>TypepKnap<Typew,Typep>::Bound(inti)//计算上界{
Typewcleft=c-cw;//剩余容量
Typepb=cp;
//以物品单位重量价值递减序装入物品
while(i<=n&&w[i]<=cleft)
{cleft-=w[i];b+=p[i];i++;
}
//如果背包剩余容量缺乏以装下一个物品
if(i<=n)
{b+=p[i]/w[i]*cleft;〃那么将物品的局部装入到背包中
returnb;
精品资料,欢迎大家下载!
以上资料仅供参考,如有侵权,留言删除!
c

最近更新

2024年湖南邵阳市食品药品监督管理局事业单位.. 59页

2024年湘中幼儿师范高等专科学校单招职业适应.. 55页

2024年版保安员(初级)内部模拟考试题库有答案.. 33页

2024年甘肃省酒泉金塔县社会救助服务人员招聘.. 268页

2024年石家庄铁路职业技术学院单招职业适应性.. 54页

2024年福建春季莆田市事业单位招聘历年高频难.. 88页

2024年福建省杂技团事业单位招聘拟聘人选历年.. 87页

2024年福建福州新区仓山功能区管委会招聘2人历.. 280页

2024年贵州中烟工业贵定卷烟厂招聘25人历年高.. 283页

2024年贵州安顺黄果树风景名胜区事业单位招聘.. 279页

2024年贵州水城县事业单位招聘651人历年高频难.. 281页

2024年贵州省毕节市纳雍县事业单位招聘59人历.. 88页

2024年贵州省绥阳县事业单位招聘214人历年高频.. 90页

2024年陕西交通职业技术学院单招职业适应性测.. 59页

2024年鹤壁职业技术学院单招职业适应性测试题.. 57页

内蒙古呼伦贝尔市事业单位招聘考试(职业能力.. 150页

安徽省宣城市选调生考试(行政职业能力测验).. 147页

山西省吕梁市事业单位招聘考试(职业能力倾向.. 147页

河北省唐山市选调生考试(行政职业能力测验).. 149页

单位空调维修合同 2页

2023年大学试题(大学选修课)-创业:道与术考考.. 12页

电路分析简明教程 习题答案(傅恩锡第三版).. 56页

领导在巡察组巡察反馈会上的讲话 5页

内镜培训试题 7页

并联式混合动力汽车的能量管理系统研究-工程硕.. 75页

智能灌溉系统上位机软件的设计 13页

英语人教版八年级下册Hansel and Gretel 27页

鼻饲管告知 1页

房地产营销策略研究毕业论文 23页