0)/*病" /> 0)/*病" />

全文预览

数据结构实验队列的基本操作

上传者:读书之乐 |  格式:doc  |  页数:8 |  大小:116KB

文档介绍
lloc(n*sizeof(PATIENT)))==NULL) { printf("内存申请错误\n"); return1;} InitData(p,n);/*生成病人到达及处理时间的随机数列*/ for(i=0;i<n||head!=NULL;){/*病人到达未结束或还有等待,处理*/ if(head==NULL){?/*等待队列为空*/ if(p[i].arrive-nowtime>0)/*病人到达时间与上次处理时间迟*/ dwait+=p[i].arrive-nowtime;?/*累计医生等待时间*/ nowtime=p[i].arrive; /*时钟推进*/ EnQueue(&head,&tail,p[i++]);?/*病人入队*/ } DeQueue(&head,&tail,&curr); /*出队一位病人*/ pwait+=nowtime-curr.arrive;?/*累计病人等待时间*/ finish=nowtime+curr.treat; /*当前病人处理结束时间*/ while(i<n&&p[i].arrive<=finish) /*下一位病人到达时间在当前病人等待时间结束之前,入队*/ EnQueue(&head,&tail,p[i++]); nowtime=finish; /*时钟推进到当前病人处理结束时间*/ } free(p); /*释放空间*/ printf("医生等待时间[%d],病人平均等待时间[%.2f]\n",dwait,(float)pwait/n);?}}六:思考题:七、教师评语:实验成绩:教师:(签名要全称)年月日注:1。此模板为专业实验报告的基本要求,若有特殊要求的实验,可在此模板基础上增加,但不可减少。2.实验报告必须在学生提交报告后一星期内批改。说明:上下页边距改成2厘米,左边距为2.0厘米,右边距为1.5厘米。表格位置为居中

收藏

分享

举报
下载此文档