Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public ArrayList<MyProcess> doSjf(){
- ArrayList<MyProcess> endedProcesses=new ArrayList<MyProcess>();
- long time=0;
- while(!queue.isEmpty()){
- MyProcess temporary=queue.get(0);
- int index=0;
- if(queue.get(0).ariveTime<=time){
- for(int i=0; i<queue.size()&&queue.get(i).ariveTime<=time; i++){
- if(queue.get(i).exeTime<temporary.exeTime)
- {temporary=queue.get(i); index=i;}
- }
- }
- if(temporary.ariveTime<=time){
- temporary.waitTime=time-temporary.ariveTime;
- time=time+temporary.exeTime;
- endedProcesses.add(temporary);
- queue.remove(index);
- }
- else
- time++;
- }
- return endedProcesses;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement