• 大小: 2KB
    文件类型: .cpp
    金币: 2
    下载: 1 次
    发布日期: 2021-05-13
  • 语言: C/C++
  • 标签: C语言  

资源简介

本程序能按照剩余空间最小的原则得出最优三维装箱顺序。

资源截图

代码片段和文件信息


#include 
#include
#define null NULL 
#define V 10
typedef struct{  //物品信息的结构体 
int go;    //编号 
int gv;     //体积 
}GOODS;
 
typedef struct Gnode{    // 物品节点 
int gnum;     // 挂在链上的编号 
    struct Gnode *link;  //指向下一个物品节点 
}GNODE;
 
typedef struct Gbox{   // 箱子结构体 
int reminder;     //剩余空间 
GNODE *head;     // 指向物品节点的第一个节点 
struct Gbox *next;

}GBOX;
 
void sortvolume(GOODS *goodsint n){  //排序 
int ij;
GOODS t;
for(i=0;i   for(j=i;j      if(goods[i].gv  {
  t=goods[i];
  goods[i]=goods[j];
  goods[j]=t;
 }  
}
 
GBOX *packingbox(GOODS *goodsint n){  //具体实现装箱 

int i;
GBOX *hb=null*ht*p;
GNODE  *newg*q;

for(i=0;i
   newg=(GNODE*)malloc(sizeof(GNODE));
   newg->gnum=goods[i].go;
   newg->link=null;
 
  for(p=hb;p&&p->remindernext); //p停下来时一定的总是开辟新箱子,分号注意 
  
   if(!p)
    {
    p=(GBOX *)malloc(sizeof(GBOX));
    p->head=null;

评论

共有 条评论