暴趣科技网
您的当前位置:首页流水作业调度 Johnson

流水作业调度 Johnson

来源:暴趣科技网
1.题目:

流水作业调度的Johnson法则 2.程序清单: #include using namespace std; #define MAXSIZE 1000 typedef struct{

int key,index; bool job;

}Jobtype; typedef struct{

Jobtype r[MAXSIZE]; int length; }Sjob;//顺序表类型 void sort(Sjob &L,int n) { }

int Flowshop(int n,int a[],int b[],int c[]) {

int i;

for(i=0;i{d.r[i].key=a[i]>b[i]?b[i]:a[i]; d.r[i].job=a[i]<=b[i]; d.r[i].index=i; } sort(d,n); int j=0,k=n-1; for(i=0;iif(d.r[i].job)

c[j++]=d.r[i].index;

Sjob d;

L.length=n; int i,j; Jobtype t; for(i=0;ifor(j=i+1;jif(L.r[i].key>L.r[j].key) { }

t=L.r[i]; L.r[i]=L.r[j]; L.r[j]=t;

}

}

else c[k--]=d.r[i].index;

j=a[c[0]]; k=j+b[c[0]]; for(i=1;ij+=a[c[i]]; } return k;

k=jvoid main() { }

3.实验截图:

int n,i;

int a[MAXSIZE],b[MAXSIZE],c[MAXSIZE]; cout<<\"作业个数:\"; cin>>n;

cout<<\"在M1上的加工时间分别为:\"; for(i=0;i>a[i];

cout<<\"在M2上的加工时间分别为:\";

for(i=0;i>b[i];

int m=Flowshop(n,a,b,c); cout<for(i=0;icout<

因篇幅问题不能全部显示,请点此查看更多更全内容