#include iostream#include String#includealgorithm#include iomanip#includemathh #includebitsstdc++husing namespace std;using namespace std;struct process int pid; 进程id int ArrivalTime; 到达时间
void SJF(){ sort(p,p+n,cmp1); //按进程的服务时间升序排序
int startTime; //进程开始时间
int EATime = 1e9; //1e9为1*10的9次方
int curTime = 0; //系统当前时间
int id = -1;
for(i=0;i<n;i++){
for(j=0;j<n;j++){
if(!p[j].flag && p[j].ArrivalTime <= curTime){ //(2)请解释左侧条件的含义
startTime = curTime;
p[j].flag = true;
p[j].FinishTime = startTime + p[j].ServiceTime; //(3)赋值号右侧的代码为?
curTime = p[j].FinishTime;
break;
}
if(!p[j].flag && p[j].ArrivalTime < EATime){
EATime = p[j].ArrivalTime;
id = j;
}
}
// (4)请解释上面的代码执行后,EATime值得含义。
if(j == n){
startTime = EATime;
p[id].flag = true;
p[id].FinishTime = startTime + p[id].ServiceTime;
curTime = p[id].FinishTime;
EATime = 1e9;
}
}
原文地址: https://www.cveoy.top/t/topic/fcBT 著作权归作者所有。请勿转载和采集!