用Java实现冲突图

用Java实现冲突图,java,graph,nodes,conflict,Java,Graph,Nodes,Conflict,我试图创建一个程序来决定一组课程是否有冲突时间,并从那些没有冲突时间的课程中创建最大的课程子集。我的想法是创建一个图,其中节点是路线,连接节点的边是冲突。然后我会给每个节点上色,没有两个相邻的节点具有相同的颜色。然后我会选择颜色最频繁的课程子集。我知道在Java中有许多不同的表示图形的方法,但是,我以前从未创建过一种,我想知道在我的例子中使用什么方法会更好。还是有更有效的方法来解决这个问题?课堂课程{ class Course { double startTime, endTime; /

我试图创建一个程序来决定一组课程是否有冲突时间,并从那些没有冲突时间的课程中创建最大的课程子集。我的想法是创建一个图,其中节点是路线,连接节点的边是冲突。然后我会给每个节点上色,没有两个相邻的节点具有相同的颜色。然后我会选择颜色最频繁的课程子集。我知道在Java中有许多不同的表示图形的方法,但是,我以前从未创建过一种,我想知道在我的例子中使用什么方法会更好。还是有更有效的方法来解决这个问题?

课堂课程{
class Course {
    double startTime, endTime; //24-hour times
    String color;
    LinkedList<Course> conflictingCourses;

    boolean conflictsWith(Course otherCourse) {
        if (this.startTime > otherCourse.endTime || otherCourse.startTime > this.endTime)
            return false;
        return true;
    }
}
双开始时间,结束时间;//24小时时间 字符串颜色; 链接列表冲突过程; 布尔冲突与(课程其他课程){ if(this.startTime>otherCourse.endTime | | otherCourse.startTime>this.endTime) 返回false; 返回true; } }
浏览所有成对的课程,看看哪一对在冲突中返回true。然后给它们上色