实验三贪心算法应用.docVIP

  • 2
  • 0
  • 约2.8千字
  • 约 9页
  • 2018-07-03 发布于湖北
  • 举报
实验三:贪心算法的应用 吴博实验描述集装箱的装箱问题 给定一个集装箱,其长为L,宽为W和高为H,现有一批圆柱形木材,每根木材的长均为L,但是半径不同,设第i根木材半径为ri。问如何装箱,使得集装箱的空间利用率最高?程序设计任给一个输入实例,能输出集装箱的空间利用率 能用图形演示装箱的过程实验思路.1.首先,使用贪心法对这批圆柱形的木材按照它们的半径从大到小进行排序2.将圆柱体填入集装箱中.i)先要算出圆柱体应该放在哪个位置.按照张德富老师课堂上讲的是,放在离已经放到集装箱中的圆柱的圆心长度为r的圆弧带里. 张老师用的是两个圆弧带之间的交点,我的算法有点不大一样,我只是使用一个圆弧带来产生坐标void Generate(int i,int j,int k,int pid),然后判断每个坐标是否合法int CheckOK(int pid,int i).ii)按照上面的做法,我的算法将产生一系列合法的坐标,然后我再从这些合法的坐标里面选出靠左下角的点,把圆柱体放到该点上去即可.实验心得.在实验室做的时候,我一直陷入张德富老师所讲的用两个圆来求第三个圆的位置,后来问助教老师,助教老师讲的是采用正方体来代替圆,这个方法也蛮不错的.最后,回到宿舍想了很久,才明白,张老师的意思是从整个圆弧带里面找出合法的坐标填进去就可以了.在写CheckOK()函数

文档评论(0)

1亿VIP精品文档

相关文档