实验四回溯算法的应用.docVIP

  • 21
  • 0
  • 约7.76千字
  • 约 8页
  • 2016-12-25 发布于海南
  • 举报
实验四回溯算法的应用

实验四:回溯算法的应用 ——零件切割问题 系别:计算机系 班级: 1班 姓名:阙寿辉 学号:22120051203884 日期:2008/06/18 一、问题描述: 给定一块宽度为W的矩形板,矩形板的高度不受限制。现需要从板上分别切割出n个高度为hi,宽度为wi的矩形零件。切割的规则是零件的高度方向与矩形板的高度方向保持一致。问如何切割使得所使用的矩形板的高度h最小? 例如: 请设计出一个回溯算法: 1.任给一个输入实例,能输出切割所需要的实际高度 2.能用图形演示切割的过程 二、算法思想: 首先将零件按高度从大到小的顺序排列好,在排序的时候本实验采用的是快排。选择零件中高度最高的一块,将该零件按照高度方向放入矩形,零件的左下角与矩形的左下角重合。这样,整个矩形空间已经被划分为三个部分:已经放上零件的一部分、所放零件的右部和所放零件的上部。然后在所放零件的右部和上部对剩余的零件采用回溯法,确定其放在哪个位置(此过程中应该考虑会不会越界)。在回溯中计算枝以后可能的最上界如果该上界比当前的最大则剪去该枝}MuKuai; typedef struct MuBan{ //木板结构体定义 float x; //木板的左下脚横坐标 float y; //木板的左下脚纵坐标 float h; //木板高度 float

文档评论(0)

1亿VIP精品文档

相关文档