📄 sortrr2.java
字号:
package dispatcher;import sun.misc.Queue;class sortRR2 { public static int[] sort(int n[][]) throws InterruptedException{ Queue queue=new Queue(); PNode temp=null; int a[]=new int[24]; for(int i=0;i<24;i++) a[i]=-1; int time=0; PNode p[]=new PNode[5]; for(int i=0;i<5;i++){ p[i]=new PNode(); } for(int i=0;i<5;i++){ p[i].number =i; p[i].arriveTime = n[0][i]; p[i].serveTime =n[1][i]; } while(time<24){ for(int i=0;i<5;i++) if(p[i].arriveTime ==time && !p[i].isInQueue && p[i].serveTime>0 ) {queue.enqueue(p[i]) ;p[i].isInQueue=true;} if(temp!=null && temp.serveTime>0) {queue.enqueue(temp) ;} if( ! queue.isEmpty() ){ temp=(PNode)queue.dequeue() ; for(int i=0;i<4;i++){ a[time++]=temp.number; for(int j=0;j<5;j++) if(p[j].arriveTime ==time && !p[j].isInQueue && p[j].serveTime>0) {queue.enqueue(p[j]) ;p[j].isInQueue=true;} temp.serveTime--; if(temp.serveTime<=0){ break; } } } else time++; } return a; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -