www.pudn.com > processsimulateJbuild.rar > sortFB2.java
package dispatcher;
import sun.misc.Queue;
class sortFB2 {
public static int[] sort(int n[][]) throws InterruptedException{
final int N=10;
Queue queue[]=new Queue[N];
for(int i=0;i0){
currentPnum++;
queue[0].enqueue(p[i]) ;System.out.print(" time:"+time+" en1:"+p[i].number);
}*/
while(time<24){
int currentQueue=-1;
for(int i=0;i0){
currentPnum++;
queue[0].enqueue(p[i]) ;//System.out.print(" time:"+time+" en5:"+p[i].number);
}
}
temp.serveTime--;
if(temp.serveTime<=0) break;
}
}
if(currentPnum==0){
if(temp!=null && temp.serveTime>0)
{queue[currentQueue].enqueue(temp) ;currentPnum++;}//System.out.print(" time:"+time+" en3:"+temp.number);}
}
else
if(temp!=null && temp.serveTime>0)
{queue[currentQueue+1].enqueue(temp) ;currentPnum++;}//System.out.print(" time:"+time+" en4:"+temp.number);}
}
else if(currentPnum>1){
if( ! queue[currentQueue].isEmpty() ){
temp=(PNode)queue[currentQueue].dequeue() ;currentPnum--;
int q=(int)Math.pow(2,currentQueue);
for(int j=0;j0){
currentPnum++;
queue[0].enqueue(p[i]) ;//System.out.print(" time:"+time+" en5:"+p[i].number);
}
}
temp.serveTime--;
if(temp.serveTime<=0) break;
}
}
if(temp!=null && temp.serveTime>0){
if(currentQueue>=N-1) queue[currentQueue].enqueue(temp) ;
else queue[currentQueue+1].enqueue(temp) ;
currentPnum++;
}//System.out.print(" time:"+time+" en6:"+temp.number);}
}
else{
time++;
for(int i=0;i<5;i++)
if(p[i].arriveTime ==time && p[i].serveTime>0){
currentPnum++;
queue[0].enqueue(p[i]) ;//System.out.print(" time:"+time+" en1:"+p[i].number);
}
}
}
return a;
}
}