用C编程最佳适应算法.doc

用C编程最佳适应算法.doc

ID:55591010

大小:18.50 KB

页数:5页

时间:2020-05-19

用C编程最佳适应算法.doc_第1页
用C编程最佳适应算法.doc_第2页
用C编程最佳适应算法.doc_第3页
用C编程最佳适应算法.doc_第4页
用C编程最佳适应算法.doc_第5页
资源描述:

《用C编程最佳适应算法.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、#include#include#defineN3typedefstructtable//分区表{intnum;//分区号intsize;//空闲去的大小intfirstadd;//起始地址structtable*next;}spare;typedefstructinput{charname[10];intsize;}job;//读取进程intscanfb(jobJob[N]){intm,i;FILE*rf;rf=fopen("course.txt","r");fscanf(rf,"%d"

2、,&m);for(i=0;inext;//printf("t%dt%dt%d",q->num,q->size,q->firstadd);r

3、=Q->next->next;q->next=NULL;//printf("t%dt%dt%d",r->num,r->size,r->firstadd);while(r!=NULL){p=Q;q=Q->next;while(q!=NULL&&r->size>q->size){p=q;q=q->next;}t=r;r=r->next;t->next=NULL;t->next=q;p->next=t;}}//输出链表voidprint(spare*Q){inti=1;spare*q,*p;q=Q->next;while(

4、q!=NULL){printf("t第%d行t%dt%dt%d",i++,q->num,q->size,q->firstadd);q=q->next;}printf("");}//最佳适应算法voidbestfit(spare*Q,jobJob[N]){inti=0;spare*q,*p;do{p=Q;q=Q->next;while(q!=NULL&&q->sizenext;}if(p==NULL)printf("内存不足,%dK大小的作业需要等待内存资源!

5、",Job[i].size);if(q!=NULL){q->size=q->size-Job[i].size;q->firstadd=q->firstadd+Job[i].size;if(q->size==0){p->next=q->next;free(q);}}i++;sort(Q);}while(q!=NULL);}voidmain(){jobJob[N];spare*Q,*p,*q,*r,*m;inti,n;FILE*rf;rf=fopen("input.txt","r");/*只读打开文件*/fscanf(rf,"%d

6、",&n);/*读入个数*/Q=(spare*)malloc(sizeof(spare));Q->next=NULL;p=Q;q=(spare*)malloc(sizeof(spare));fscanf(rf,"%d%d%d",&(q->num),&(q->size),&(q->firstadd));q->next=NULL;p->next=q;//printf("%d%d%d",q->num,q->size,q->firstadd);for(i=1;inext;m=Q;p=q;q=(spare*

7、)malloc(sizeof(spare));fscanf(rf,"%d%d%d",&(q->num),&(q->size),&(q->firstadd));//printf("%d%d%d",q->num,q->size,q->firstadd);q->next=NULL;while(r!=NULL&&r->sizesize){m=r;r=r->next;//printf("%d%d%d",q->num,q->size,q->firstadd);}q->next=r;m->next=q;//printf("%

8、d%d%d",q->num,q->size,q->firstadd);}print(Q);scanfb(Job);//sort(Q);bestfit(Q,Job);printf("----最佳适应算法分区分配后的空闲区----");print(Q);}

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

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

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