2011算法设计与分析试题b答案

2011算法设计与分析试题b答案

ID:17643431

大小:46.50 KB

页数:5页

时间:2018-09-04

2011算法设计与分析试题b答案_第1页
2011算法设计与分析试题b答案_第2页
2011算法设计与分析试题b答案_第3页
2011算法设计与分析试题b答案_第4页
2011算法设计与分析试题b答案_第5页
资源描述:

《2011算法设计与分析试题b答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、山东理工大学《算法设计与分析》评分标准(B)卷10-11学年第二学期班级:姓名:学号:…………………………………装……………………………订…………………………线………….………………………………一.简答题(每题5分,共20分)1.程序的时间复杂性和空间复杂性算法的复杂性是算法运行所需要的计算机资源的量。需要时间资源的量称为时间复杂性。需要空间资源的量称为空间复杂性。2.回溯法与分支限界法的区别两者都是问题的解空间树上搜索问题解的算法。回溯法与分支限界法的的求解目标不同,回溯法的求解目标是找出解空间树中满足约束条件的所有解,而分支限界法

2、的求解目标是找出解空间树中满足约束条件的一个解,或是在满足约束条件的解中找出使某一目标函数值达到极大或极小的解,即在某种意义下的最优解。3.写出3个NP完全问题团问题、子集和问题、旅行售货员问题。(任意3个即可)4.概率算法的分类数值概率算法、舍五德算法、拉斯维加斯算法、孟特卡罗算法。二.解下列递推方程(10分):T(n)=1n=1T(n)=8T(n/2)+O(n2),n>1T(n)=8T(n/2)+O(n2)=8(8T(n/22)+O(n/2)2)+O(n2)=82T(n/22)+O(n2)=8k3T(n/2k)+O(n2)(n=2

3、k)(------6分)=8logn=O(n3)(-----4分)三.实例题(每题10分,共40分)1.451312169522最大总费用:每次合并最多的2组45+22+(67+16)+(83+13)+(96+12)+(108+9)+117+5=593(-----5分)最小总费用:每次合并最少的4组5+9+13+12+(39+16+22+45)=161(-----5分)2.给出一个赋权无向图如下,求最小生成树。2544653345每错一边扣2分。共3页第1页(1)3.123*789的计算过程如下:令X=123Y=789则把X,Y分为两

4、段得X=1*102+23Y=7*102+89记A=1B=23C=7D=89则由大整数乘法得公式得X*Y=AC104+((A-B)(D-C)+AC+BD)102+BD=1*7*104+(-22*82+1*7+23*89)*102+23*89=970474.n=4,w=[15,10,8,13],p=[20,15,13,18],c=30。M(I,j)为背包容量为j,可选择物品为I,I+1,…,n时0-1背包问题的最优值(-----2分)M(1,30)=max{m(2,30),20+m(2,15)}=33m(2,30)=max{m(3,30)

5、,15+m(3,20)}={31,33}=33(-----4分)m(2,15)=max{m(3,15),15+m(3,5)}={18,15}=18m(3,30)=max{m(4,30),13+m(4,22)}={18,31}=31m(3,20)=max{m(4,20),13+m(4,12)}={18,0}=18m(3,15)=max{m(4,15),13+m(4,7)}={18,0}=18m(3,5)=m(4,5)=0(-----4分)最优值为33,最优解为(1,0,1,0)四.编程题(每题15分,共30分)1:code:#inclu

6、de#include#defineN600 //N不能太大了intmax(inta,intb){ returna>b?a:b;}intmain(){ inti,j,k,n; intV,W,p; intc[10],w[10],pr[10],v[10]; intf[N][N]; while(scanf("%d",&n)!=EOF) {       scanf("%d%d",&V,&W);  for(i=1;i<=n;i++)     scanf("%d%d%d%d",&v[i],&w[i],&c[i]

7、,&pr[i]);  memset(f,0,sizeof(f));  for(i=1;i<=n;i++)                                      //(二维)多重背包转化成01背包  {     j=c[i];   for(k=W;k>=j*w[i];k--)   {    for(p=V;p>=j*v[i];p--)    {     f[k][p]=max(f[k][p],f[k-j*w[i]][p-j*v[i]]+j*pr[i]);    }   }  }  printf("%d",f[W]

8、[V]); }}共3页第2页 for(j=1;j<=c[i];j*=2)   {    for(k=W;k>=j*w[i];k--)  //就是再加这一维就行了    {     for(p=V;p>=j*v[i];p-

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。