私はスケジューリングプログラムを作ろうとしていますが、2つの会話が同時に進行することはできません。最初の話をスケジューラプランに入れた後、私は自分のarrayList内の各トークを調べて、スケジュール内の最後の話と互換性があるかどうかを確認したい。arrayListsを使ったソートアルゴリズム
私は、インデックスiの開始時刻がインデックスi-1の終了時刻よりも大きいかどうかを比較することで確認できます。
endTimeで私の講演と講義をソートし、最初の配列を入力しました。今私はイベントを比較し、スケジューラプランに正しいものを追加するのに問題があります。
public class Scheduler {
private ArrayList<Event> events = new ArrayList <Event>();
public Scheduler(ArrayList<Event> events){ //Constructor
for (int i=0; i<events.size(); i++)
this.events.add(events.get(i));
}
public ArrayList<Event> getsortSchedule(){ //Sorting Algorithm
int N = events.size() -1;
for (int i = 0; i <=(N-1); i++)
{
for(int j = 1; j <= N;j++)
{
if(events.get(i).getendTime().compareTo(events.get(j).getendTime()) > 0)
Collections.swap(events, i, j);
}
}
return events;
}
public Scheduler getSchedule(){ //Scheduling attempt
Scheduler plan = new Scheduler(events);
this.events.add(events.get(0));
for (int i=0; i == events.size(); i++)
{
//if(events.get(i).getStartTime() > events.get(i).getendTime())
//if(events.get(i).getStartTime().compareTo(events.get(l).getendTime()) > events.get(i-1).getendTime().compareTo(events.get(l).getendTime()))
this.events.add(events.get(i));
}
return plan;
}
をやってリストを並べ替えるいけない**イベントを比較する**?すでに 'endtime'イベントと比較しています(' collection'' sort'メソッドを使用していません)? – developer