1 / 9
文档名称:

循环首次适应算法首次适应算法最佳适应算法C语言版.doc

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

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

分享

预览

循环首次适应算法首次适应算法最佳适应算法C语言版.doc

上传人:雨林书屋 2022/1/12 文件大小:61 KB

下载得到文件列表

循环首次适应算法首次适应算法最佳适应算法C语言版.doc

文档介绍

文档介绍:#include<>
#define getpch(type) (type*)malloc(sizeof(type))
struct LNode
{ int size;
int start;
int end;
struct LNode *next;
struct LNode *front;
}*L; /*L 为头指针 */
typedef struct LNode LN;
LN *find;
int n;
void InsertList(int size,int start)
{// 在带头结点的单链线形表头结点后插入
LN *p,*s,*t; p=L;
t=p->next;
s=getpch(LN); //生成新结点 s->size=size;
s->start=start;
s->end=start + size ;
s->next=t; //插入 L 中
p->next=s;
if(t) t->front=s;
s->front=p;
}//end of InsertList
void PrintList() /* 打印 */
{
LN *p; int i;
p=L->next;
printf("\n 空闲区号

长度

起始位置

终止位置

\n");
for(i=1;i<=n;i++)
{
printf(" %3d\t

%3d\t%3d\t

%4d\n",i,p->size, p->start,p->end);
p=p->next;
}
}
void BFSortList() /* 最佳适应算法的排序 */
{
LN *p,*s,*t;
int min_size,i;
int size,start,end;
t=L->next;
p=L->next;
for(i=0;i<n;i++)
{
s=p->next;
min_size = p->size;
while(s)
{
if(min_size > s->size)
{
min_size=s->size;
t=s;
}
s=s->next;
}
size=t->size;
start=t->start;
end=t->end;
t->size=p->size;
t->start=p->start;
t->end=p->end;
p->size=size;
p->start=start;
p->end=end;
t=p->next;
p=p->next;
}
}// end of BF_SortList
void SortList() /* 首次和循环首次适应算法的排序 */
{
LN *p,*s,*t;